余的循环是0—n-1;(要注意的)
#include<stdio.h> int main() { int a,b,n,i; __int64 sa[1000];
while(scanf("%d%d%d",&a,&b,&n),a||b||n){ sa[1]=1; sa[2]=1; for(i=3;i<1000;i++){//f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. sa[i]=(a*sa[i-1]+b*sa[i-2])%7; if(sa[i]==1&&sa[i-1]==1)break; } if(n>2){ i=i-2; n%=i; if(n==0)n=i;//注意零的余数。 printf("%I64d/n",sa[n]); } else printf("1/n"); } return 0;}