首页 > 代码库 > USTC OJ — 1003 Fibonacci Numbers(组合数学, 简单题)
USTC OJ — 1003 Fibonacci Numbers(组合数学, 简单题)
1. 题目描述
Fibonacci数列定义为:
A0 = 0, A1 = 1;
An = An-1 + An-2, if n >= 2.
问题:输入一个n( 0 ≤ n ≤ 40 ),计算An.
2. 算法设计
直接利用公式计算即可,时间复杂度O(N),由于数据规模很小,可以选择
- 先打表,然后对每一个测试数据n,直接输出An;
- 或者分别对每一个n,计算An。
3. AC Code
1 #include <stdio.h> 2 #define N 41 3 int f[N]; 4 void pre_do(); 5 void ac_fun(); 6 int main() 7 { 8 //freopen("in.txt", "r", stdin); 9 pre_do();10 ac_fun();11 return 0;12 }13 void pre_do()14 {15 int i;16 f[0] = 0; f[1] = 1;17 for (i = 2;i < N;i++) f[i] = f[i-1] + f[i-2];18 }19 void ac_fun()20 {21 int n;22 while(scanf("%d", &n) != EOF)23 {24 printf("The Fibonacci number for %d is %d\n", n, f[n]);25 }26 }
USTC OJ — 1003 Fibonacci Numbers(组合数学, 简单题)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。