欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

Light OJ 1006 - Hex-a-bonacci

发布时间:2024/8/24 编程问答 41 如意码农
生活随笔 收集整理的这篇文章主要介绍了 Light OJ 1006 - Hex-a-bonacci 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

题目链接:http://acm.hust.edu.cn/vjudge/contest/121396#problem/G

http://lightoj.com/volume_showproblem.php?problem=1006

密码:acm

Description

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 == ) return a;
if( n == ) return b;
if( n == ) return c;
if( n == ) return d;
if( n == ) return e;
if( n == ) return f;
return( fn(n-) + fn(n-) + fn(n-) + fn(n-) + fn(n-) + fn(n-) );
}
int main() {
int n, caseno = , 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) % );
}
return ;
}

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.

分析:改善整数溢出情况

*:数组、求余

 #include<stdio.h>
#include<math.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
#include<iostream> using namespace std; #define N 11000 int a[N]; int main()
{
int T,k=,i,n; scanf("%d", &T); while(T--)
{
for(i=;i<;i++)
{
scanf("%d", &a[i]);
a[i]%=;///取余是必须滴
} scanf("%d", &n); for(i=;i<=n;i++)
{
a[i]=(a[i-]+a[i-]+a[i-]+a[i-]+a[i-]+a[i-])%;
} printf("Case %d: %d\n", k++, a[n]);
}
}

总结

以上是生活随笔为你收集整理的Light OJ 1006 - Hex-a-bonacci的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。