Number Sequence:
此题的关键是数列每48个数出现循环。
#include<iostream> using namespace std; #define N 49 int s[N]; int main(){ int a,b,n; while(cin>>a>>b>>n){ if(a==0&&b==0&&n==0) break; s[1]=1; s[2]=1; int i; for(i=3;i<=48;++i) s[i]=(a*s[i-1]+b*s[i-2])%7; if(n%49==0) cout<<s[1]<<endl; else cout<<s[n%49]<<endl; } return 0; }