思路:第一次尝试(错误):将M个苹果转换成为不同重量堆的苹果,使用0-1背包解决,失败:原因是在苹果分堆在聚合过程后无法控制总数恰好等于M; 第二次尝试(错误):注意到M个苹果放到N个盘子里,依次相加空出0个、1个……N个盘子各个数量,失败;原因是调用M个苹果装到N-k个盘子会有重复:例如将(M=4,N=3)时,4个苹果分别放入3个、2个、1个盘子时分别结果为1,3,1,会有重复因为放入2个盘子的(0,4)放法和放入一个盘子相同。 第三次尝试(成功):令f(n,m)表示n个盘子盛放m个苹果,注意到拿n-1个盘子(可以有空盘子)放m个苹果和n个盘子(无空盘子)放m个苹果无重复所有有 子问题1:f...