摘要: 题意:给定整数N,将其分成若干正数的和(正数可以相同),问有多少种方案?例如N=4,有: 4 = 4; 4 = 3 + 1; 4 = 2 + 2; 4 = 2 + 1 + 1; 4 = 1 + 1 + 1 + 1; 共5种方案。分析:(1+x+x2+x3...)*(1+x2+x4+x6...)*(1+x3+x6+x9...)....const int N = 120;int a[2][N+1], p, q;int n;void init(){ a[0][0] = 1; FOE(i, 1, N){ p = 1-q; FOE(j, 0, N) if(a[q]... 阅读全文
posted @ 2013-05-22 21:57 心向往之 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题意:给定整数N,求有多少种方案,能将其分解为若干不同正数的和?(1<=N<=1000)例如N=4,有4=4,4=3+1两种, 4=2+2, 2重复,不满足条件。 4=3+1和4=1+3算一种。分析:(1+x)*(1+x^2)*(1+x^3)……(1+x^n),x^n的系数即为答案。const int mod = 19901014;const int N = 1000;int a[2][N+5], p, q;int n;void init(){ a[0][0] = 1; FOE(i, 1, N){ p = 1-q; FOE(j, 0, N) ... 阅读全文
posted @ 2013-05-22 21:25 心向往之 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题意:给出1分 2分 5分硬币的个数,问最小的不能组合出的值是多少。const int M = 8005;int a[2][M], p, q, sum;int c[4], m[4]={0, 1, 2, 5};int main(){ #ifndef ONLINE_JUDGE //freopen("in.txt","r",stdin); //freopen("out.txt","w",stdout); #endif while(scanf("%d%d%d", &c[1], &c[2] 阅读全文
posted @ 2013-05-22 17:22 心向往之 阅读(132) 评论(0) 推荐(0) 编辑