动态规划直接算分区数
输入正整数后立即计算 p(n),适合数学学习、组合题验证和算法演示。
输入正整数后立即计算 p(n),适合数学学习、组合题验证和算法演示。
当 n 不大时,页面会同步给出若干个具体拆分示例,方便理解整数分区含义。
所有运算都在浏览器本地完成,适合课堂演示和临时题目验证。
浏览器本地计算
输入正整数 n,计算它有多少种不考虑顺序的拆分方式,并在范围较小时给出具体拆分示例。适合数学学习、组合问题验证和算法演示。
口径说明
整数分区不区分顺序,例如 `4+1` 和 `1+4` 只算一种。
为了保证页面响应速度,示例拆分只在 n ≤ 20 时展示。
分区数 p(n)
22
当前 n
8
示例预览
8
计算方法
动态规划
结果说明:`p(8) = 22`。
前 8 个拆分示例
算法提示
状态转移:`dp[j] += dp[j - i]`。
外层枚举加数,内层累加目标和,可以自然去掉顺序重复。
工具使用说明
先输入需要计算的正整数,例如 5、8、10 或更大的 n。
如果你想看具体拆分方式,可以设置展示多少条示例。
页面会给出 p(n) 的结果,并在范围允许时展示具体分区拆分。
功能说明
整数分区是把一个正整数拆成若干个正整数之和,并且不区分顺序。例如 `4+1` 和 `1+4` 视为同一种拆分。
这类问题常见于离散数学、组合数学和动态规划入门场景。
只给出一个总数还不够直观,具体拆分示例能帮助你更快理解“为什么是这个结果”。
所以页面在 n 较小时会额外列出前几种拆分方式,方便课堂讲解和题目检查。
常见问题
不会。`3+2` 和 `2+3` 只算一种分区。
因为拆分数量增长很快,全部展开会明显拖慢页面,所以大数只展示分区总数。
不会。所有计算都在浏览器本地完成,不会把输入值提交到服务器。
适合。页面同时给出结果、示例和动态规划思路,适合做入门讲解。