作业帮 > 数学 > 作业

一个算法问题.整数划分问题,就是说正整数n可以表示成一系列正整数之和.

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:数学作业 时间:2024/05/08 01:48:19
一个算法问题.整数划分问题,就是说正整数n可以表示成一系列正整数之和.
比如6 可以为 6 5+1 4+2 4+1+1 .一共11种.然后在正整数n的所以不同划分中将最大加数n1不大于m的划分个数记做q(n,m)然后他给出了计算q(n,m)的递归公式.其中的一个我不知道是怎么得来的,就是q(n,m)=
q(n,m-1)+q(n-m,m) 当n>m>1的时候,求大神详细解释下,谢谢
一个算法问题.整数划分问题,就是说正整数n可以表示成一系列正整数之和.
n分为不超过m个数和的划分数
=n分为不超过m-1个数和的划分数 +n划分为正好m个数的和的划分数(将这m个数每个数减1就得到下式)
=n分为不超过m-1个数和的划分数 +(n-m)划分为不超过m个数的和的划分数
再问: 请问下能不能再解释下 n划分为正好m个数的和的划分数(将这m个数每个数减1就得到下式)是怎么样转变为 (n-m)划分为不超过m个数的和的划分数 还有我想你是不是理解错了,这个m不是划分的个数,而是最大加数
再答: 确实理解错了,不过转换方法还是类似的: n分为max不超过m的划分数 =n分为max不超过m-1的划分数 +n先划分出1个m值且再将n-m作max不超过m的划分数 =n分为max不超过m-1的划分数 +n-m作max不超过m的划分数
再问: 基本了解你的意思了,但是还有一个问题请教就是为什么n先划分出1个m值且再将n-m作max不超过m的划分数 = n-m作max不超过m的划分数 谢谢了,再讲下,我理解能力不行
再答: n先划分出1个m值且再将n-m作max不超过m的划分数 对应于n划分成至少有一个数是m,其余数不超过m的划分数。 即然至少有一个m,就等价于n-m作不超过m(这时可以小于m)的划分。 仔细体会,总能想明白的。