




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ACM程序设计 杭州电子科技大学 刘春英 *1 上一周, 你 了吗? 练习 Date2 每周一星(7): 07054202 Date3 第八讲 母函数及其应用 (Generation function ) Date4 从递推关系说 起 Date5 研究以下多项式乘法: 可以看出: x2项的系数a1a2+a1a3+.+an-1an中所有的项包括n个元素 a1,a2, an中取两个组合的全体; 同理:x3项系数包含了从n个元素a1,a2, an中取3个 元素组合的全体; 以此类推。 (81) Date6 若令a1=a2= =an=1,在(8-1)式中 a1a2+a1a3+.+an-1an项系数中每一个组合有 1个贡献,其他各项以此类推。故有: (82) 特例: Date7 母函数定义: n对于序列a0,a1,a2,构造一函数: n称函数G(x)是序列a0,a1,a2,的 母函数 Date8 For example: (1+x)n是序列 C(n,0),C(n,1),.,C(n,n)的母函数。 如若已知序列a0,a1,a2, 则对应的母函数G(x)便可根据定义给出 。 反之,如若已经求得序列的母函数G(x) ,则该序列也随之确定。 序列a0,a1,a2,可记为 an 。 Date9 实 例 分 析 Date10 例1:若有1克、2克、3克、4克的砝码各一 枚,能称出哪几种重量?各有几种可能方案 ? 如何解决这个问题呢?考虑构造母函数 。 如果用x的指数表示称出的重量,则: 1个1克的砝码可以用函数1+x表示, 1个2克的砝码可以用函数1+x2表示, 1个3克的砝码可以用函数1+x3表示, 1个4克的砝码可以用函数1+x4表示, Date11 几种砝码的组合可以称重的情况, 可以用以上几个函数的乘积表示: (1+x)(1+x2)(1+x3)(1+x4) =(1+x+x2+x3)(1+x3+x4+x7) =1+x+x2+2x3+2x4+2x5+2x6+2x7+x8+x9+x10 从上面的函数知道:可称出从1克到10克,系数便 是方案数。 例如右端有2x5 项,即称出5克的方案有2: 5=3+2=4+1;同样,6=1+2+3=4+2;10=1+2+3+4。 故称出6克的方案有2,称出10克的方案有1 Date12 例2:求用1分、2分、3分的邮票 贴出不同数值的方案数 n因邮票允许重复,故母函数为: n以展开后的x4为例,其系数为4,即4拆分 成1、2、3之和的拆分数为4; n即 :4=1+1+1+1=1+1+2=1+3=2+2 Date13 概念:整数拆分 n所谓整数拆分即把整数分解成若干整 数的和(相当于把n个无区别的球放 到n个无标志的盒子,盒子允许空, 也允许放多于一个球)。 n整数拆分成若干整数的和,办法不一 ,不同拆分法的总数叫做拆分数。 Date14 练习(写出以下问题的母函数): n例3:若有1克砝码3枚、2克砝码4枚 、4克砝码2枚,问能称出哪几种重 量?各有几种方案? n例4: 整数n拆分成1,2,3,m的 和,求其母函数。 n例5:如若上例中m至少出现一次,其 母函数又如何? Date15 如何编写程序 实现母函数的应用呢? 核心问题 关键:对多项式展开 Date16 以整数拆分为例: 观察以下的母函数: 首先思考:如果让你手工计算,你是怎样处理的? 实际编程:让计算机按照自己的思路计算即可 Date17 / Author by lwg #include using namespace std; const int lmax=10000; int c1lmax+1,c2lmax+1; int main() int n,i,j,k; while (cinn) for (i=0;i using namespace std; const int lmax=300; int c1lmax+1,c2lmax+1; int main(void) int n,i,j,k; while (cinn in i=n;i+) c1i=1;c2i=0; for (i=2; i=17; i+) for (j=0;j=n;j+) for (k=0;k+j=n; k+=elemi-1 ) c2j+k+=c1j; for (j=0;j=n;j+) c1j=c2j;c2j=0; coutc1nendl; return 0; Date22 思考(1): nHDOJ_1028 Ignatius and the Princess III Date23 思考(2): nHDOJ_1085 Holding Bin-Laden Captive! Date24 思考(3): nHDOJ_1171 Big Event in HDU Date25 思考(4): nHDOJ_1709 The Balance Date26 Any questions? Date27 附:相关作业(hdoj): 2008ACM ProgrammingExercise(9)_母函数 1,2,3, Go! 一定要 练习 1028、1709、 1085、117
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 口腔技术士考试题及答案
- 工商银行2025玉林市数据分析师笔试题及答案
- 农业银行2025通辽市秋招结构化面试经典题及参考答案
- 交通银行2025鄂尔多斯市秋招笔试价值观测评题专练及答案
- 2025年3D打印技术的工业革命
- 农业银行2025半结构化面试15问及话术广西地区
- 2025基因编辑技术的疾病治疗突破
- 建设银行2025台州市结构化面试15问及话术
- 工商银行2025遂宁市秋招无领导小组面试案例题库
- 2025软件工程新发展方向
- 《法律职业伦理》课件-第二讲 法官职业伦理
- 大学生劳动教育概论知到智慧树章节测试课后答案2024年秋南昌大学
- 2025苏教版小学数学二年级上册教学计划
- 盆底肌筋膜筛查及手法治疗
- 景观设计客户需求洞察
- 第五讲铸牢中华民族共同体意识-2024年形势与政策
- 车用驱动电机原理与控制基础(第2版)课件:三相交流绕组及其磁场
- 加油站安全费用提取、使用台账
- 高考政治一轮复习:统编版必修1《中国特色社会主义》必背考点提纲填空练习版(含答案)
- 译林版小学英语二年级上册全册课件
- 2024年卷烟封装设备操作工职业鉴定考试题库(浓缩500题)
评论
0/150
提交评论