Hduoj1021【水题】

来源:互联网 发布:直播平台数据报告 编辑:程序博客网 时间:2024/05/23 09:48
/*Fibonacci AgainTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 44042    Accepted Submission(s): 21024Problem DescriptionThere are another kind of Fibonacci numbers: F(0) = 7, F(1) = 11, F(n) = F(n-1) + F(n-2) (n>=2).InputInput consists of a sequence of lines, each containing an integer n. (n < 1,000,000).OutputPrint the word "yes" if 3 divide evenly into F(n).Print the word "no" if not.Sample Input012345 Sample Outputnonoyesnonono AuthorLeojay*/#include<stdio.h>int a[1000010];int main(){int i, j, k;a[0] = 1;a[1] = 2;for(i = 2; i < 1000002; ++i)a[i] = (a[i-1] + a[i-2]) % 3;while(scanf("%d", &k) != EOF)if(a[k] == 0)printf("yes\n");elseprintf("no\n");return 0;}


题意:给出一个新的fib数列,给出一个n让你判断这个数是否是3的倍数。

思路:由于fib数列是累加的,所以我们可以用同于定理直接累加上去,即使n很大也不会超出范围。

0 0
原创粉丝点击