题目大意:
按照公式计算即可
解题思路:
迭代相加即可
代码如下:
#include<stdio.h>
int arr[10000];
int main()
{
int a,b,n;
arr[1]=arr[2]=1;
while((scanf("%d%d%d",&a,&b,&n)!=EOF)&&(a||b||n))
{
int i;
for(i=3;i<10000;i++)
{
arr[i]=(a*arr[i-1]+b*arr[i-2])%7;
if((arr[i]==1)&&(arr[i-1]==1))
break;
}
n=n%(i-2);
arr[0]=arr[i-2];
printf("%d\n",arr[n]);
}
return 0;
}
6086

被折叠的 条评论
为什么被折叠?



