- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
会计学
1
组合数学课件整数的拆分
2
2.8:整数的拆分
1、拆分的概念
2、拆分的模型
3、拆分算法:递归实现
4、用母函数讨论拆分数
第1页/共34页
3
2.8:整数的拆分
所谓整数的拆分,是指把一个正整数拆分成若干正整数的和。不同的拆分法的数目称为拆分数
例如:考虑正整数4的拆分数:
4=4,4=3+1,4=2+2,4=2+1+1,4=1+1+1+1
通常用p(n)表示整数n拆分成若干正整数的和的拆分数,也可说成方案数
例如p(4)=5。
1、拆分的概念
第2页/共34页
4
(1)、C(n,r)
2、拆分的模型
2.8:整数的拆分
从n个不同的球中取出r个,放进r个相同的盒子中,不许空盒,有多少种放法.
(2)、P(n,r)
从n个不同的球中取出r个,放进r个不相同的盒子中,不许空盒,有多少种放法.
第3页/共34页
5
(3)、从n个不同元素中取r个允许重复的组合
2.8:整数的拆分
r个相同的球放进n个不同的盒子中,允许空盒,有多少种放法.
以正整数4为例:
4=4,4=3+1,4=2+2,4=2+1+1,4=1+1+1+1
(4)、正整数n的拆分数
第4页/共34页
6
正整数n的拆分,相当于把n个无区别的球放进n个无区别的盒子,盒子中允许放一个以上的球,也允许空着
以正整数4为例,球的放法如下:
4=4,4=3+1,4=2+2,4=2+1+1,4=1+1+1+1
○○
○○
○
○○
○
2.8:整数的拆分
***
第5页/共34页
7
3、拆分算法:递归实现
定义一个函数Q(n,m):表示整数n的所有加数都不超过m的拆分数。
n的拆分数就可以表示为Q(n,n)
Q(n,n)有以下递归关系
(1)Q(n,n)=1+Q(n,n-1)
停止条件:
(1)Q(n,1)=1
(2)Q(1,m)=1
2.8:整数的拆分
Q(n,m)有以下递归关系
(2)Q(n,m)=Q(n,m-1)+Q(n-m,m)
第6页/共34页
8
int divinteger(int n,int m)
{if (n1||m1)
printf(“error”);
else if(n=1||m=1)
return(1);
else if(nm)
return divinteger(n,n)
else if(n=m)
return(1+divinter(n,n-1));
else
return(divinteger(n,m-1)+divinteger(n-m,m));
}
2.8:整数的拆分
第7页/共34页
9
例1 求4的拆分数。
解:分析下面的多项式x4项的系数与4的拆分数的关系.
(1+x+x2+x3+x4…)(1+x2+x4…)
(1+x3…)(1+x4…)
4、用母函数讨论拆分数
2.8:整数的拆分
4=1+1+1+1,4=2+1+1,4=2+2,4=3+1, 4=4,
第8页/共34页
10
n的拆分数的母函数。
4、用母函数讨论拆分数
2.8:整数的拆分
第9页/共34页
11
例2 求1角、2角、3角的邮票可贴出不同数值邮资的方案数的母函数。
解:
单独用1角的母函数为1+x+x2+x3+…
单独用2角邮票的母函数为1+x2+x4+x6+…
单独用3角邮票的母函数为1+x3+x6+x9+…
2.8:整数的拆分
第10页/共34页
12
2.8:整数的拆分
第11页/共34页
13
例3 求正整数n拆分成1,2,…m的和,并允许重复的拆分数。如若其中m至少出现一次,试求它的方案数及其母函数。
解1:
展开式中xn项的系数就是要求的拆分数。
2.8:整数的拆分
第12页/共34页
14
解2:如果m至少出现一次。
G(x)=(1+x+x2+ … )(1+x2+x4+… )…
(xm+x2m+…)
2.8:整数的拆分
第13页/共34页
15
2.8:整数的拆分
正整数n拆分成1,2,…m的和,并允许重复的拆分数。
若其中m至少出现一次,它的方案数等于拆分成1,2,…,m的拆分数减去拆分成1,2,…,m-1的拆分数。
以正整数4为例:
4=4,4=3+1,4=2+2,4=2+1+1,4=1+1+1+1
第14页/共34页
16
定理2.8.1 正整数r拆分成不同正整数和的拆分
文档评论(0)