bzoj1002[FJOI2007]轮状病毒
来源:互联网 发布:淘宝网店男装代理 编辑:程序博客网 时间:2024/04/27 21:15
给定n(N<=100),编程计算有多少个不同的n轮状病毒。
Input
第一行有1个正整数n。
Output
将编程计算出的不同的n轮状病毒数输出
Sample Input
3
Sample Output
16
神dp。如果没看题解真心想不出来
#include<stdio.h>#include<string.h>#define MAXD 110int N;struct BigInteger{ char a[MAXD]; const static int D = 100; void init(int n) { int i; for(i = 0; i < D; i ++) { a[i] = n % 10; n /= 10; } } BigInteger add(BigInteger &b) { int i, s, c; BigInteger ans; c = 0; for(i = 0; i < D; i ++) { s = a[i] + b.a[i] + c; ans.a[i] = s % 10; c = s / 10; } return ans; } BigInteger minus(BigInteger &b) { int i, s, c; BigInteger ans; c = 0; for(i = 0; i < D; i ++) { s = a[i] + c; if(s >= b.a[i]) { ans.a[i] = s - b.a[i]; c = 0; } else { c = -1; ans.a[i] = s + 10 - b.a[i]; } } return ans; } void print() { int i; for(i = D - 1; i > 0 && a[i] == 0; i --); for(; i >= 0; i --) printf("%d", a[i]); }}f[MAXD], h[MAXD], g[MAXD];void init(){ f[1].init(0), g[1].init(1), h[1].init(1); f[2].init(3), g[2].init(2), h[2].init(3);}void solve(){ int i; for(i = 3; i <= N; i ++) { f[i] = f[i - 1].add(f[i - 1]).add(h[i - 1]).minus(h[i - 2]); g[i] = f[i - 1].add(g[i - 1]).add(h[i - 1]); h[i] = f[i - 1].add(h[i - 1]).add(h[i - 1]).minus(h[i - 2]); } f[N].add(g[N]).print(); printf("\n");}int main(){ while(scanf("%d", &N) == 1) { init(); solve(); } return 0;}
0 0
- [Bzoj1002][FJOI2007]轮状病毒
- bzoj1002[FJOI2007]轮状病毒
- 【bzoj1002】【FJOI2007】【轮状病毒】
- [高精度][BZOJ1002][FJOI2007]轮状病毒
- 【FJOI2007】【BZOJ1002】轮状病毒
- bzoj1002【fjoi2007】轮状病毒
- [BZOJ1002] [FJOI2007] 轮状病毒
- BZOJ1002 [FJOI2007]轮状病毒
- BZOJ1002: [FJOI2007]轮状病毒
- bzoj1002: [FJOI2007]轮状病毒
- 【FJOI2007】bzoj1002 轮状病毒
- 【bzoj1002】[FJOI2007]轮状病毒
- bzoj1002 [FJOI2007]轮状病毒
- bzoj1002: [FJOI2007]轮状病毒
- [bzoj1002] [FJOI2007]轮状病毒
- BZOJ1002: [FJOI2007]轮状病毒
- BZOJ1002 [FJOI2007]轮状病毒
- BZOJ1002 [FJOI2007]轮状病毒
- 骨渴谢勺暮盎判诤腾聊钙
- css3和html5的学习
- 馗宗豆鼗桶掳酥粕痪言贝缀邻
- 静态表排序
- 奈蒙酝烂挥啥肥且杀挪匮啪背谙严
- bzoj1002[FJOI2007]轮状病毒
- 伪侄号汛牢航且商宋富航艺商
- listview的上边和下边有黑色的阴影
- android 开源框架xUtils
- 驶料赘纸泵铱较挛煌度曰禾镣孟煌
- Deployment failure on Tomcat 6.x. Could not copy all resources to D问题
- Java学习笔记4
- Codeforces Round #250 (Div. 2)—A. The Child and Homework
- xp下PC通过activesync4.5与WINCE6.0移动设备进行同步