Number Sequence||HDU1005
来源:互联网 发布:出售一手国外邮箱数据 编辑:程序博客网 时间:2024/06/08 04:40
link:http://acm.hdu.edu.cn/showproblem.php?pid=1005
Problem 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 31 2 100 0 0
Sample Output
25
题解:KMP的简单运用,把字符数组换成整数数组就行了
AC代码:
#include<cstdio>#include<cmath>#include<cstdlib>#include<cstring>#include<algorithm>#include<iostream>using namespace std;int num[10010];int s[1000100],t[10010];int n,m;void buildNext(){ int i,j; i=0,j=-1; num[0]=-1; while(i<m) { if(j==-1||t[i]==t[j]) { i++,j++; num[i]=j; } else j=num[j]; }}int kmp(){ int i,j;// n=strlen(s);// m=strlen(t); i=j=0; while(i<n) { if(j==-1||s[i]==t[j]) { i++,j++; if(j==m) { return i-m+1; } } else j=num[j]; } return -1;}int main(){ int T; char c; scanf("%d",&T); while(T--) { scanf("%d%d",&n,&m); int i; for(i=0;i<n;i++) scanf("%d",&s[i]);//第一遍忘记改,%s也过了,神奇 for(i=0;i<m;i++) { scanf("%d",&t[i]); } buildNext(); printf("%d\n",kmp()); }return 0;}
阅读全文
0 0
- Number Sequence hdu1005
- (hdu1005)Number Sequence
- hdu1005 Number Sequence
- hdu1005 number sequence
- hdu1005 Number Sequence
- hdu1005 ( Number Sequence )
- Number Sequence(HDU1005)
- hdu1005 Number Sequence(数论)
- hdu1005 Number Sequence
- HDU1005 Number Sequence
- Hdu1005 Number Sequence
- hdu1005 Number Sequence
- hdu1005 Number sequence(数学)
- HDU1005 Number Sequence
- hdu1005 Number Sequence
- Number Sequence(HDU1005)
- HDU1005 Number Sequence
- hdu1005 Number Sequence
- ES6基础之Class的继承
- order by 2
- 一分钟了解负载均衡的一切
- php读取txt文件并将数据插入到数据库
- Help Jimmy(动态规划)
- Number Sequence||HDU1005
- [转载]经典Java线程面试题70道
- 【数据库】缓存 数据库 redis mc 好文
- IDEA中BinDingException解决
- HashMap的实现原理和底层数据结构
- 全排列(next_permutation,递归)
- android camera2
- Activiti5工作流(一)
- String的两种实例化方法的区别