Combination Sum III
来源:互联网 发布:ubuntu启动脚本编写 编辑:程序博客网 时间:2024/06/06 12:36
Find all possible combinations of k numbers that add up to a numbern, given that only numbers from 1 to 9 can be used and each combination should be a unique set of numbers.
Example 1:
Input: k = 3, n = 7
Output:
[[1,2,4]]
Example 2:
Input: k = 3, n = 9
Output:
[[1,2,6], [1,3,5], [2,3,4]]思路:backtracking.跟之前的II差不多。
public class Solution { public List<List<Integer>> combinationSum3(int k, int n) { List<List<Integer>> lists = new ArrayList<List<Integer>>(); if(k < 0 || n < 0) return lists; ArrayList<Integer> list = new ArrayList<Integer>(); collect(lists, list, k, n, 0, 0, 1); return lists; } public void collect(List<List<Integer>> lists, List<Integer> list, int k, int n, int count, int sum, int index) { if(sum > n) return; if(count == k && sum == n){ lists.add(new ArrayList<Integer>(list)); return; } for(int i=index; i<=9; i++){ sum += i; count++; list.add(i); collect(lists, list, k, n, count, sum, i+1); list.remove(list.size()-1); count--; sum -=i; } }}
0 0
- Combination Sum II&III
- Combination Sum III
- LeetCode Combination Sum III
- Combination Sum III
- [LeetCode] Combination Sum III
- Combination Sum III
- 【leetcode】 Combination Sum III
- [leetcode] Combination Sum III
- [leetCode] Combination Sum III
- leetcode Combination Sum III
- leetcode--Combination Sum III
- LeetCode216:Combination Sum III
- Combination Sum III
- LeetCode Combination Sum III
- Combination Sum III
- Combination Sum III
- Leetcode: Combination Sum III
- leetcode: Combination Sum III
- C#中Cookie的概述及应用
- hdu 5737【线段树+有序表+线段树小技巧+ 二分不要写错……】
- DojoX 评分 widget 实际效果
- struts2 配置文件模板
- Geekband第十三周作业
- Combination Sum III
- 剑指offer-面试题7
- 【PAT】(乙级)1005. 继续(3n+1)猜想 (25)
- c语言实现内存逆序查找函数
- poj 3126 Prime Path
- POJ 3259 Wormholes SPFA判负环
- 饥饿的小易
- Android学习-Sax解析XML
- 【PAT】(乙级)1006. 换个格式输出整数 (15)