LeetCode 216:组合总和 III(回溯 / 固定长度搜索)ACERS 解析
副标题 / 摘要 216. 组合总和 III 给回溯再加了一条关键约束:不仅总和要命中,组合长度也必须恰好等于 k。这会把问题变成一个很干净的“固定长度组合搜索”。 预计阅读时长:12~15 分钟 标签:回溯、固定长度、剪枝、组合搜索 SEO 关键词:Combination Sum III, 组合总和 III, 固定长度回溯, k 个数, 剪枝, LeetCode 216 元描述:从题目本身推导 LeetCode 216 的稳定解法,真正理解固定长度 k、有界候选集 1..9 与只能使用一次的回溯模型。 A — Algorithm(题目与算法) 题目还原 找出所有满足条件的组合,使得: 从 1 到 9 中选数 一共恰好选 k 个数 这些数的和等于 n 每个数最多只能使用一次 返回所有可能的合法组合。 答案中不能包含重复组合,组合顺序不重要。 输入输出 名称 类型 描述 k int 需要选出的数字个数 n int 目标和 返回 int[][] 所有长度为 k 且和为 n 的合法组合 示例 1 输入:k = 3, n = 7 输出:[[1,2,4]] 示例 2 输入:k = 3, n = 9 输出:[[1,2,6],[1,3,5],[2,3,4]] 示例 3 输入:k = 4, n = 1 输出:[] 约束 2 <= k <= 9 1 <= n <= 60 目标读者 已经理解 39、40,现在准备继续叠加“长度必须恰好是 k”这个新约束的学习者 会写基本 DFS,但经常把“目标和”与“固定长度”混在一起判断的读者 想掌握固定长度组合搜索模板的开发者 背景 / 动机 这道题很适合作为 39 和 40 之后的下一题,因为它保留了回溯骨架,但搜索空间进一步收紧了: ...