[求助]2105
#include <stdio.h>main()
{long int c[100],n,a,b,i,j,k,s,f;
while(scanf("%ld%ld%ld",&a,&b,&n)!=EOF)
{ if(a==0&&b==0&&n==0) break;
c[1]=1;c[2]=1;f=0;
for(i=3;i<100;i++)
{ c[i]=(c[i-1]*a+c[i-2]*b)%7;
k=i;
for(j=1;j<i;j++)
{ if(c[i]==c[j])
while(1)
{ i++; j++;
c[i]=(c[i-1]*a+c[i-2]*b)%7;
if(j==k-1){f=1 ;break;}
if(c[i]!=c[j])break;
}
break;
}
if(f==1)break;
}
s=n%j;
printf("%ld\n",c[s]);
}
}
帮忙看看答案哪里错了
地址http://acm.zju.edu.cn/show_problem.php?pid=2105
谢谢!