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.
Sample Input0
1
2
3
4
5
Sample Outputno
no
yes
no
no
no
#include<stdio.h>
int main()
{
int a[1000005]={0},n,i;
a[0]=7%3;
a[1]=11%3;
while(~scanf("%d",&n))
{
for(i=2;i<=n;i++)
a[i]=(a[i-1]%3+a[i-2]%3)%3;
if(a[n]==0)
printf("yes\n");
else
printf("no\n");
}
return 0;
}
本文介绍了一种特殊的斐波那契数列,其初始值为7和11,随后每一项是前两项之和。通过模运算,文章提供了一个算法,用于判断该数列中任意一项是否能被3整除,从而解决了一个有趣的数学问题。
1万+

被折叠的 条评论
为什么被折叠?



