杭电数学题疑惑之1005

#include<stdio.h>
int main()
{
    int a,b,n;
	int num[105]={0,1,1};
	while(scanf("%d%d%d",&a,&b,&n)!=EOF&&a+b+n!=0)
	{
		int i;
		
		for(i=3;i<104;i++)
		{
			num[i]=(a*num[i-1]+b*num[i-2])%7;
			if(num[i]==num[2]&&num[i-1]==num[1])
				break;
		}
		n%=(i-2);
		if(n!=0)
			printf("%d\n",num[n]);
		else
			printf("%d\n",num[i-2]);
	}
	return 0;
}

问:为啥加个等号,就AC不了。会过界?

for(i=3;i<=104;i++)。


阅读更多
个人分类: C/ACM练习随笔
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭