Fibonacci Again 不可小瞧的一道题。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
__int64 F[1000110];
int main( )
{
int i,n;
while(scanf("%I64d",&n)!=EOF)
{
memset(F,0,sizeof(F));
F[0] = 7, F[1] = 11;
for(i=2;i<=n;i++)
F[i] = F[i-1] + F[i-2];
if(!(F[n]%3))
printf("yes\n");
else
printf("no\n");
}
return 0;
}
值太大即使用__int64也不行。上面这个一直wa..。
找规律吧。
第2,6,10,14项的值就能被3整除,可推定起规律为当n-2能被4整除,则第n项的值能被3整除。。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main( )
{
int i,n;
while(scanf("%d",&n)!=EOF)
{
if((n+2)%4==0)
printf("yes\n");
else
printf("no\n");
}
return 0;
}
posted on 2011-05-03 19:28 more think, more gains 阅读(131) 评论(0) 收藏 举报
浙公网安备 33010602011771号