- 5
- 0
- 约1.19千字
- 约 6页
- 2020-04-10 发布于天津
- 举报
整数的分划问题.PPT
整数的分划问题 问题 整数划分是一个经典的问题。 每组输入是两个整数n和k。(1 = n = 50, 1 = k = n) 对于每组输入,请输出六行。 第一行: 将n划分成若干正整数之和的划分数。 第二行: 将n划分成k个正整数之和的划分数。 第三行: 将n划分成最大数不超过k的划分数。 第四行: 将n划分成若干奇正整数之和的划分数。 第五行: 将n划分成若干不同整数之和的划分数。 如 1、将5划分成若干正整数之和的划分为: 5, 4+1, 3+2, 3+1+1, 2+2+1, 2+1+1+1, 1+1+1+1+1 2、将5划分成2个正整数之和的划分为: 3+2, 4+1 3、将5划分成最大数不超过2的划分为: 1+1+1+1+1, 1+1+1+2, 1+2+2 4、将5划分成若干奇正整数之和的划分为: 5, 1+1+3, 1+1+1+1+1 5、将5划分成若干不同整数之和的划分为: 5, 1+4, 2+3 分析 递归函数的声明为?int?split(int?n,?int?m);其中n为要划分的正整数,m是划分中的最大加数(当m??n时,最大加数为n),????1?当n?=?1或m?=?1时,split的值为1,可根据上例看出,只有一个划分1?或?1?+?1?+?1?+?1?+?1?+?1????可用程序表
原创力文档

文档评论(0)