public static List<List<Integer>> kNumber2SumM(List<Integer> param, int k, int m) { List<List<Integer>> result = new ArrayList<>(); if (k == 1) { if (param.contains(m)) { List<Integer> temp = new ArrayList<>(); temp.add(m); result.add(temp); return result; } } for (int i = 0; i < param.size(); i++) { List<Integer> nextParam = new ArrayList<>(); nextParam.addAll(param); nextParam.remove(i); List<List<Integer>> lists = kNumber2SumM(nextParam, k - 1, m - param.get(i)); for (List<Integer> list : lists) { list.add(param.get(i)); // 不加这个判断就是一个全排列的结果 if (!hasList(result, list)) { result.add(list); } } } return result; }
点赞 评论

相关推荐

牛客583549203号:腾讯还好,况且实习而已,实习生流动性很大,属于正常现象,记得和HR委婉解释
点赞 评论 收藏
分享
当初高考报计算机真是造大孽了啊!卷的飞起!哪都是计算机的人,考研,考公,找工作全他奶的计算机的人,太难了。国企也是。关键一届比一届卷,造大孽了!
_Lyrics_:因为计算机,没有体验到快乐的大学研究生时光,好不容易修完课程就要出去实习,看着别人专业可以一起搓麻将,游山玩水,而我却要自己一个人住在北上不到十平米的出租屋,每天两点一线
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务