HDU 1021 斐波那契
参考自:https://www.cnblogs.com/ECJTUACM-873284962/p/6404504.html
Fibonacci Again
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 58267 Accepted Submission(s): 27275
Problem Description
There are another kind of Fibonacci numbers: F(0) = 7, F(1) = 11, F(n) = F(n-1) + F(n-2) (n>=2).
Input
Input consists of a sequence of lines, each containing an integer n. (n < 1,000,000).
Output
Print the word "yes" if 3 divide evenly into F(n).
Print the word "no" if not.
Print the word "no" if not.
Sample Input
012345
Sample Output
nonoyesnonono
解法:
1 #include<stdio.h> 2 int main(){ 3 int i,n,f[10000]; 4 f[0] = 7; 5 f[1] = 11; 6 while(scanf("%d",&n)!=EOF){ 7 for(i=2; i<=n; i++){ 8 f[i] = f[i-1]+f[i-2]; 9 } 10 if(f[n]%3 == 0) 11 printf("yes\n"); 12 else printf("no\n"); 13 } 14 return 0; 15 }
后来,get一个规律:n除4余2的就输出yes,否则no。
1 #include<stdio.h> 2 int main(){ 3 int n; 4 while(scanf("%d",&n)!=EOF){ 5 if(n%4==2) 6 printf("yes\n"); 7 else printf("no\n"); 8 } 9 return 0; 10 }