当前位置: 代码迷 >> C语言 >> [求助2105
  详细解决方案

[求助2105

热度:228   发布时间:2007-05-10 20:21:53.0
[求助2105
(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
回的请加我qq了起来方便,呵呵
----------------解决方案--------------------------------------------------------
回复:(king5827663)[求助2105

我是名初学者,不知道怎么回事?
总不能发现问题!


----------------解决方案--------------------------------------------------------

你去看一下这里:
http://bbs.bc-cn.net/dispbbs.asp?boardid=5&replyid=391191&id=102423&page=1&skin=0&Star=1


----------------解决方案--------------------------------------------------------