LeeBlog

导航

2011年3月26日 #

HDU 1284 钱币兑换问题 母函数 or 完全背包

摘要: i相信知道做前面那个后这个应该很水了#include<stdio.h>int m1[40000],m2[40000];void chart( ){ for( int i = 0 ; i <=32780; ++i ) { m1[i] = 1; m2[i] = 0; } for( int i = 2; i <= 3;++i ) { for( int j = 0; j <= 32780; ++j ) for( int k = 0; k + j <= 32780; k += i ) m2[j + k] += m1[j]; for( int j = 0; j < 阅读全文

posted @ 2011-03-26 21:15 LeeBlog 阅读(260) 评论(0) 推荐(0) 编辑

HDU 1028 Ignatius and the Princess III 母函数 模板 or 完全背包

摘要: 这题是母函数的一模板题,如果你还不知道什么叫母函数,请去网上下载卢华明,卢开澄的<组合数学>,或者去tankywoo那里把原理看懂,http://www.wutianqi.com/?p=596。里面的第二章把母函数的原理分析得很透彻,下面讲代码实现.其实下面代码就是电脑模拟人工计算,而且很有规则,是从第一个括号开始算起,先把第一个括号跟第二个括号相乘,然后这两个括号就合并了,然后又把第一个括号跟第二个括号相乘,知道n个括号全部被算出来(i 就代表第几个括号正在被合并);我想大家肯定对m2[j + k] += m1[j]很疑惑,是的,我也在这卡了很久.我开始总以为这是什么公式,结果一 阅读全文

posted @ 2011-03-26 20:44 LeeBlog 阅读(442) 评论(2) 推荐(1) 编辑