hdoj-1005-Number Sequence

计算结果存在循环,每48一轮循环

 1 #include <iostream> 
 2 #include <algorithm>
 3 using namespace std;
 4 int arr[50];
 5 int main()
 6 {
 7     int a, b, n;
 8     while (cin>>a>>b>>n, a+b+n) {
 9         arr[1] = 1;
10         arr[2] = 1;
11         for (int i=3; i<=48; i++) {
12             arr[i] = (a*arr[i-1] + b*arr[i-2]) % 7;
13         }
14         cout<<arr[n%48]<<endl;
15     }
16     return 0;
17 }

 

posted @ 2018-05-03 11:04  朤尧  阅读(258)  评论(0编辑  收藏  举报