Light OJ 1006( 递归优化 )
来源:互联网 发布:fm2017 球员数据库 编辑:程序博客网 时间:2024/05/06 06:20
1006 - Hex-a-bonacci
Given a code (not optimized), and necessary inputs, you have to find the output of the code for the inputs. The code is as follows:
int a, b, c, d, e, f;
int fn( int n ) {
if( n == 0 ) return a;
if( n == 1 ) return b;
if( n == 2 ) return c;
if( n == 3 ) return d;
if( n == 4 ) return e;
if( n == 5 ) return f;
return( fn(n-1) + fn(n-2) + fn(n-3) + fn(n-4) + fn(n-5) + fn(n-6) );
}
int main() {
int n, caseno = 0, cases;
scanf("%d", &cases);
while( cases-- ) {
scanf("%d %d %d %d %d %d %d", &a, &b, &c, &d, &e, &f, &n);
printf("Case %d: %d\n", ++caseno, fn(n) % 10000007);
}
return 0;
}
Input
Input starts with an integer T (≤ 100), denoting the number of test cases.
Each case contains seven integers, a, b, c, d, e, f and n. All integers will be non-negative and 0 ≤ n ≤ 10000 and the each of the others will be fit into a 32-bit integer.
Output
For each case, print the output of the given code. The given code may have integer overflow problem in the compiler, so be careful.
Sample Input
Output for Sample Input
5
0 1 2 3 4 5 20
3 2 1 5 0 1 9
4 12 9 4 5 6 15
9 8 7 6 5 4 3
3 4 3 2 54 5 4
Case 1: 216339
Case 2: 79
Case 3: 16636
Case 4: 6
Case 5: 54
#include<iostream>#include<stdio.h>#include<string.h>#include<math.h>#include<algorithm>typedef long long ll;using namespace std;#define INF 1e18#define N 10010ll sum[N];int main(){ int T,cas=0; scanf("%d",&T); while(T--) { int a,b,c,d,e,f,n; scanf("%d%d%d%d%d%d%d",&a,&b,&c,&d,&e,&f,&n); memset(sum,0,sizeof(sum)); sum[0]=a,sum[1]=b,sum[2]=c; sum[3]=d,sum[4]=e,sum[5]=f; for(int i=6;i<=n;i++) { sum[i]=(sum[i-1]+sum[i-2]+sum[i-3]+sum[i-4]+sum[i-5]+sum[i-6])%10000007; } printf("Case %d: %lld\n",++cas,sum[n]%10000007); ///用lld,别用I64d } return 0;}
- Light OJ 1006( 递归优化 )
- LIGHT OJ 1189 - Sum of Factorials【贪心+递归】
- light oj
- light oj
- Light OJ
- Light OJ
- Light OJ 1006 Hex-a-bonacci
- Light OJ 1000
- Light OJ 1001
- Light OJ 1008
- Light OJ 1022
- Light OJ 1015
- Light OJ 1042
- light oj 1128
- Light OJ 1055 BFS
- Light OJ Beginners Problems
- Light OJ Basic Geometry
- Light OJ Basic Math
- 【IP分片】IP分片浅析
- Oracle如果表存在删除表及表字段修改
- Java接口的Default属性
- 高级算法-题解1
- jQuery 总结
- Light OJ 1006( 递归优化 )
- Activity的生命周期
- #500-6 【杂】访问属性
- 怎么开展性能测试
- springMvc定时任务Annotation
- Pig ERROR 1002
- C#笔记——面向对象编程
- Map集合遍历的三种方式
- SubLime 3和插件安装教程