算法答案: public class Find { public static void main(String[] args) { int data[] = {1,2,3,4,5,6,8,10}; int k = 2; int m = 7; List<List<Integer>> data1 = findData(data, k, m); System.out.println(1); } private static List<List<Integer>> findData(int[] data, int k, int m) { List<List<Integer>> res = new ArrayList<>(); findRes(data, k, m, 0, new ArrayList<>(), res); return res; } private static void findRes(int[] data, int k, int m, int start, List<Integer> currentCom, List<List<Integer>> res){ // 判断不为0 if(k == 0 && m == 0){ res.add(new ArrayList<>(currentCom)); return; } if(k<=0 || m<=0 || start >= data.length){ return; } for(int i= start; i<data.length; i++){ currentCom.add(data[i]); findRes(data,k-1,m-data[i],i+1,currentCom,res); currentCom.remove(currentCom.size() -1); } } }
点赞 评论

相关推荐

岗位情况:AWS&nbsp;OpenSearch团队的前端开发暑期实习实习,有转正机会,位于上海timeline:1.24官网投递&nbsp;2.12发oa&nbsp;2.16完成oa&nbsp;2.20邀请填写vo时间&nbsp;2.24晚上确定面试时间&nbsp;2.26两轮面试&nbsp;2.28早上邮件催&nbsp;2.28下午6点hr口头offer&nbsp;3.3正式offeroa完成情况:两道算法题都做出来了(测试样例全过),后面的行为测试题我全靠自己感觉做的,没看过亚麻军规(Leadership&nbsp;Principle)面试语言:纯中文面试面试体验:两轮loop&nbsp;interview背靠背,中间间隔1小时,面试体验非常好,面试官很亲和,尊重面试人,会有很多hint和follow&nbsp;up。一面考察的范围很广,二面更看重coding,中间也会考察一点bq一点思考:1.&nbsp;实习时间:HR在给口头offer之前打电话跟我说技术团队那边觉得技术方面没有问题,但是担心实习时间不够长,他们希望实习比较长的时间然后转正。我在给出肯定答复之后,HR给了口头offer,实习时间可能是他们很看重的点。2.&nbsp;Coding:Coding应该是必考的,但是具体是手写前端代码还是LeetCode算法题,取决于面试官的偏好,比如我的两个面试官都没考算法题,而其他面试同一个岗位的同学却考了算法题。因此都需要准备一下,我觉得把Hot100里的easy-medium学明白足够应付。3.&nbsp;编程语言:默认是Javascript,由于前端主要用的是JS,因此使用JS才更能说服面试官。4.&nbsp;八股:在面试之前我没想到一面的八股会考的这么全面还这么偏,所以其实答的很一般,但是还好影响不大。5.&nbsp;Edge&nbsp;Case:&nbsp;面试官会比较注重对边界条件的判断,不管是写算法题还是写前端代码,都需要多考虑一些edge&nbsp;cases。6.&nbsp;BQ:&nbsp;面试官会通过一些点来引入BQ(Behavior&nbsp;Questions),建议提前看一下LP,稍微准备一下对应的事例,面试的时候被问到才不会手忙脚乱。7.&nbsp;Rolling:&nbsp;根据我了解的情况,我猜测他们应该是滚动录取,一周面一批人,然后选一个人发offer,其他发拒信,因此最好第一时间投递,到后面可能还没面就招完了(HR说上海这边前端可能招2-3人)8.&nbsp;开源:由于这是一个开源项目,提及自己的开源经历是很大的加分项。#亚马逊##暑期实习##校招##前端#
点赞 评论 收藏
分享
牛客网
牛客企业服务