hdu 1130 How Many Trees?(卡特兰数)
2012-11-28 19:42
435 查看
卡特兰数高精度。
View Code
View Code
/* Author:Zhaofa Fang Lang:C++ */ #include <cstdio> #include <cstdlib> #include <sstream> #include <iostream> #include <cmath> #include <cstring> #include <algorithm> #include <string> #include <utility> #include <vector> #include <queue> #include <stack> #include <map> #include <set> using namespace std; typedef long long ll; #define DEBUG(x) cout<< #x << ':' << x << endl #define REP(i,n) for(int i=0;i < (n);i++) #define FOR(i,s,t) for(int i = (s);i <= (t);i++) #define PII pair<int,int> #define PB push_back #define MP make_pair #define ft first #define sd second #define lowbit(x) (x&(-x)) #define INF (1<<30) int f[105][200]; void product(int a[],int b[],int c[]) { REP(j,200)c[j]=0; int e = 0; int N = 200-1; while(N>=0 && !b )N--; REP(k,N+1) { for(int j=0;j+k<200;j++) { int tmp = a[j] * b[k]; int tmp1 = tmp + c[j+k] + e; c[j+k] = (tmp1)%10; e = (tmp1)/10; } } } void print(int a[]) { int k = 200 - 1; while(k>=0 && !a[k])k--; for(int i=k;i>=0;i--)printf("%d",a[i]); puts(""); } void pre(void) { f[3][0] = f[2][0] = 1; int tmp[200]; FOR(i,4,102) { //puts("**********"); FOR(j,2,i-1) { product(f[j],f[i - j + 1],tmp); //DEBUG(j);print(f[j]); //DEBUG(i-j+1);print(f[i-j+1]); //print(tmp); int e = 0; for(int k=0;k<200;k++) { int tmp1 = f[i][k] + tmp[k] + e; f[i][k] = tmp1%10; e = tmp1/10; } } } } int main() { //freopen("in","r",stdin); pre(); int n; while(~scanf("%d",&n))print(f[n+2]); return 0; }
相关文章推荐
- HDU 1130 How Many Trees? 卡特兰数
- HDU ACM 1134 Game of Connections / 1130 How Many Trees?(卡特兰数)
- HDU 1130 How Many Trees?(卡特兰数+大数)
- HDU1130_How Many Trees?(卡特兰数 _java)
- hdu 1130 How Many Trees?(卡特兰数,大数的乘法与除法)
- HDU 1130 how many trees(卡特兰数)
- HDU 1130 How Many Trees?
- hdu 1130 How Many Trees?
- hdu 1130 How Many Trees?(二叉树节点的Catalan数)
- hdoj 1130 How Many Trees? 【卡特兰数】
- HDU 1130 How Many Trees?
- hdu 1130 How Many Trees?
- 【HDU】1130 - How Many Trees?(java - BigDecimal & 卡特兰大数打表)
- HDU 1130 How Many Trees?(Catalan + 大数)
- HDOJ HDU 1130 How Many Trees?
- hdu 1130 How Many Trees?
- HDU 1130 How Many Trees?
- hdu 1130 How Many Trees?
- HDU - 1130 How Many Trees?
- HDU 1130 How Many Trees?