原文地址链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1021
我们可以知道公式 (a+b)%c=(a%c+b%c)%c 然后 从F(0)=7 F(1)=11开始 我们只要看每一个数对3取余的结果就好了 设G(X) = F(X)%3 那么就有 G(0)=1,G(1)=2 G(N)=(G(N-1)+G(N-2))%3 然后把前面几项你就会看到规律 1 2 0 2 2 1 0 1 1 2 0 2 2 …… 所以是以8为周期的 然后第3项和第7项为0 所以可以得到:
<span style="font-size:18px;">#include<stdio.h>
#define mod 1000;
int main()
{
int n;
while ((scanf("%d", &n)) != EOF)
{
if (n % 8 == 2 || n % 8 == 6)
{
printf("yes\n");
}
else
{
printf("no\n");
}
}
return 0;
}</span>