这道题只需要找出 f(n)%3 的循环数列就行了。。。
我是先打印出前100个f(n)%3 的数,找到其循环数列为 0, 2, 2, 1, 0, 1, 1, 2(感觉好偷懒。。。)
#include<stdio.h>
int main()
{
int a[8] = {0, 2, 2, 1, 0, 1, 1, 2};
int n;
while (~scanf("%d", &n))
{
n = (n-2) % 8;
if (a[n] == 0)
printf("yes\n");
else
printf("no\n");
}
}