#include<iostream>
#define maxn 100000005
using namespace std;
int a[maxn];
int main()
{
int A,B,n,T,i;
while(cin>>A>>B>>n&&(A!=0||B!=0||n!=0))
{
a[1]=1;
a[2]=1;
for(i=3;i<=55;i++)
{
a[i]=(A*a[i-1]+B*a[i-2])%7;
if (a[i]==1&&a[i-1]==1)
{
break;
}
}
T=i-2;
a[0]=a[T];
cout<<a[n%T]<<endl;
}
return 0;
}
/*这题不能直接按公式用递归来求,因为n最大可以达到100,000,000,会栈溢出
所以要找规律
前两个等于1,所以后面如果有两个连着的1出现,那就是出现周期了*/
Number Sequence
最新推荐文章于 2021-01-17 21:32:56 发布