试题 算法训练 求数列的项
资源限制
时间限制:1.0s 内存限制:256.0MB
有一个数列,它的第一项是1,第二项是2,第三项是第一项与第二项的和,后面的项依次类推,即F(1)=1,F(2)=2,F(n)=F(n-1)+F(n-2)(n≥3,n∈N*)
输入格式
无
输出格式
输出20行,每行一个数值,表示数列第几项的值。(注意不要输出多余的字符)
编译语言: C++
#includeusing namespace std; int F(int n) { if (n == 1)return 1; else if(n == 2)return 2; else return F(n - 1) + F(n - 2); } int main() { for(int i=1;i<=20;i++) cout << F(i) < 编译语言:python
print('''1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 ''')搞笑一下,下面才是正题
# 递归方式实现 生成前20项 lis =[] for i in range(20): if i ==0 : lis.append(1) elif i ==1: lis.append(2) else: lis.append(lis[i-2]+lis[i-1])#从第3项开始每项值为前两项值之和 for i in range(20): print(lis[i])



