列表

详情


NC21169. 1005好玩的数列

描述

斐波纳契数列是这样的数列: f1 = 1 f2 = 1 f3 = 2 f4 = 3 .... fn = f(n-1) + f(n-2) 输入一个整数n 求fn

输入描述

一个整数n, n<= 45

输出描述

一个整数fn

示例1

输入:

3

输出:

2

示例2

输入:

9

输出:

34

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++11(clang++ 3.9) 解法, 执行用时: 4ms, 内存消耗: 472K, 提交时间: 2018-11-18 16:07:30

#include<iostream>
using namespace std;
int main()
{
	int a=1,b=1,n,s=1;
	scanf("%d",&n);
	for(int i=2;i<n;i++)
	{
	s=a+b;
	a=b;
	b=s;
	}
	cout<<s;
}

C++14(g++5.4) 解法, 执行用时: 3ms, 内存消耗: 488K, 提交时间: 2020-10-06 09:46:50

#include<bits/stdc++.h>
using namespace std;
int n,f[50]={0,1},i=2;
main()
{
    cin>>n;
    for(;i<=n;i++)f[i]=f[i-2]+f[i-1];
	cout<<f[n];
}

pypy3(pypy3.6.1) 解法, 执行用时: 54ms, 内存消耗: 18532K, 提交时间: 2020-03-18 19:29:22

a = 1
b = 1
c = 1
n = int(input())
for i in range(n - 2):
    c = a + b
    a = b
    b = c
print(c)

C(clang 3.9) 解法, 执行用时: 2ms, 内存消耗: 372K, 提交时间: 2020-08-03 11:40:35

main(){
    int n,a,b=0,c=1,i=1;scanf("%d",&n);
    for(;i<n;i++){a=c;c+=b;b=a;}printf("%d",c);
}

Python3 解法, 执行用时: 41ms, 内存消耗: 4512K, 提交时间: 2023-03-11 16:58:05

n=int(input())
f=[0]*50
f[1]=1
f[2]=1
for i in range(3,n+1):
    f[i]=f[i-1]+f[i-2]
print(f[n])

上一题