leetcode_Combination Sum III
来源:互联网 发布:手机网络新游戏 编辑:程序博客网 时间:2024/06/10 07:50
描述:
Find all possible combinations of k numbers that add up to a number n, given that only numbers from 1 to 9 can be used and each combination should be a unique set of numbers.
Ensure that numbers within the set are sorted in ascending order.
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]]
思路:
1.和Combination Sum II思路类似,只是在其基础上判断一下当有满足条件的结果时,其序列长度是否为k
代码:
public List<List<Integer>> combinationSum3(int k, int n) {int candidates[]={1,2,3,4,5,6,7,8,9};List<List<Integer>>listResult=new ArrayList<List<Integer>>();ArrayList<Integer>list=new ArrayList<Integer>();Arrays.sort(candidates);combination(listResult, list, candidates, k,n,0);return listResult;}public void combination(List<List<Integer>>listResult,ArrayList<Integer>list,int[] candidates,int k, int target,int begin){if(target==0){if(list.size()==k)<span style="font-size: 13.3333339691162px; font-family: Arial, Helvetica, sans-serif;">//</span><span style="font-size: 13.3333339691162px; font-family: Arial, Helvetica, sans-serif;">Combination Sum III</span>listResult.add(list);return;}for(int i=begin;i<candidates.length&&target>=candidates[i];i++){if(i==begin||candidates[i]!=candidates[i-1])//<span style="font-size: 13.3333339691162px;">Combination Sum II</span>{ArrayList<Integer>copy=new ArrayList<Integer>(list);copy.add(candidates[i]);combination(listResult, copy, candidates,k,target- candidates[i],i+1);}}}
0 0
- leetcode_Combination Sum III
- Leetcode_Combination Sum III
- LeetCode_Combination Sum
- Leetcode_combination-sum
- LeetCode_Combination Sum
- leetcode_Combination Sum
- Leetcode_Combination Sum
- LeetCode_Combination Sum II
- Leetcode_combination-sum-ii
- LeetCode_Combination Sum II
- leetcode_Combination Sum II
- Leetcode_Combination Sum 回溯法
- Combination Sum II&III
- Combination Sum III
- LeetCode Combination Sum III
- Combination Sum III
- [LeetCode] Combination Sum III
- Combination Sum III
- 伪静态网站分享到微信链接打不开的解决办法
- 不仅仅只控制代码,也要控制数据
- 打造安全的App!iOS安全系列之 HTTPS
- 代码分类之实现复制文件或文件夹
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- leetcode_Combination Sum III
- 【POJ】 2442——Sequence【STL—优先队列】
- 跳跃表解析
- 一些好的技术博客知识和网站
- [leetcode-116]Populating Next Right Pointers in Each Node(c++)
- Windows 右键相关:不用按Shift,直接显示“在此处打开命令窗口 ”
- 求int型数据在内存中存储时1的个数
- Unity shader学习资料
- Spring和MyBatis学习 (卷首)