数列的规则

时间: 1ms        内存:128M

描述:

一数列的规则如下: 1、1、2、3、5、8、13、 21、…..求第30位数是多少?

输入:

输出:

示例输入:

示例输出:

提示:

参考答案(内存最优[1120]):

#include<stdio.h>
int main()
{
	int f[105];
	f[1]=1;f[2]=1;
	for(int i=3;i<=30;i++)
	{
		f[i]=f[i-1]+f[i-2];
	}
	printf("%d",f[30]);
	return 0;
}

参考答案(时间最优[0]):

#include<stdio.h>
int main()
{
    int a,b=1,c=1,i,n=30;
    if(n==1||n==2)
        printf("1");
    else
    for(i=3;i<=n;i++)
        {
        a=c+b;
        b=c;
        c=a;
        }
        printf("%d",a);
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。