HDU 1005

1 #include <iostream>
2
3 using namespace std;
4
5 int main(){
6 int a,b,c;
7 int f[100];
8 int i;
9 while(cin>>a>>b>>c,a+b+c){
10 f[1]=f[2]=1;
11 for(i=3;i<100;i++){
12
13 f[i]=(f[i-1]*a+f[i-2]*b)%7;
14
15 if(f[i]==1&&f[i-1]==1) break;
16 //cout<<f[i-2]<<endl;
17 }
18 //考虑取余后为0的情况
19 cout<<( (c%(i-2))?(f[(c)%(i-2)]):(f[i-2]) )<<endl;
20
21 }
22 return 0;
23 }
原文地址:https://www.cnblogs.com/lfzark/p/2072200.html