Number Sequence
2014-01-29 22:45
302 查看
Description
A number sequence is defined as follows:
f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.
Given A, B, and n, you are to calculate the value of f(n).
Input
The input consists of multiple test cases. Each test case contains 3 integers A, B and n on a single line (1 <= A, B <= 1000, 1 <= n <= 100,000,000). Three zeros signal the end of input and this test case is not to be processed.
Output
For each test case, print the value of f(n) on a single line.
Sample Input
1 1 3
1 2 10
0 0 0
Sample Output
2
5
找循环,因为是对七取余,所以结果也就是0 1 2 3 4 5 6 7种,最少其次,即 7*7 = 49 种,循环节不一定以 1 1 开头。
A number sequence is defined as follows:
f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.
Given A, B, and n, you are to calculate the value of f(n).
Input
The input consists of multiple test cases. Each test case contains 3 integers A, B and n on a single line (1 <= A, B <= 1000, 1 <= n <= 100,000,000). Three zeros signal the end of input and this test case is not to be processed.
Output
For each test case, print the value of f(n) on a single line.
Sample Input
1 1 3
1 2 10
0 0 0
Sample Output
2
5
找循环,因为是对七取余,所以结果也就是0 1 2 3 4 5 6 7种,最少其次,即 7*7 = 49 种,循环节不一定以 1 1 开头。
#include <stdio.h> #include <string.h> #define pi 3.1415927 int sz[60]; int main() { int a,b,n,i,j,xc,xj,bj; while(~scanf("%d%d%d",&a,&b,&n)) { bj = 0; sz[0] = 1; sz[1] = 1; sz[2] = 1; if(a == 0 && b == 0 && n == 0) break; for(i = 3; i<=n && bj == 0; i++) { sz[i] = (a * sz[i - 1] + b * sz[i - 2]) % 7; for(j = 2; j<i; j++) { if(sz[j] == sz[i] && sz[j-1] == sz[i-1]) { xc = j; xj = i; bj = 1; break; } } } if(bj == 1) printf("%d\n",sz[xc + (n - xj) % (xj - xc)]); else printf("%d\n",sz ); } return 0; }
相关文章推荐
- hdu 1711 Number Sequence (kmp)
- hdoj-【1005 Number Sequence】
- hdu 1005 Number Sequence
- (HDU)1711 - Number Sequence【KMP】
- Number Sequence
- 杭电ACM 1005 Number Sequence
- Number Sequence (KMP算法(模板))
- 【HDU1711】Number Sequence
- HDU——T 1711 Number Sequence
- Number Sequence
- Number Sequence(找规律,,,,,反正我没找到,递归超内存了....)
- HDU 1005 Number Sequence 找规律
- HDU 1711 Number Sequence
- poj1019 Number Sequence 二分+数学+打表
- HDU 4390 Number Sequence (容斥原理+组合计数)
- Number Sequence
- HDU——1005 Number Sequence 弱智数学题
- poj 1019 Number Sequence
- poj 1019 Number Sequence
- hdu 1005 Number Sequence