//把最大的N个包放到小顶堆,然后剩下的包加到堆顶上去,直到所有的包都加进去,堆顶就是结果 private static int smallerPackage(int[] array, int num){ PriorityQueue<Integer> pq = new PriorityQueue<>(); for (int i = array.length-1; i >= array.length-num; i--) { pq.add(array[i]); } for (int i = array.length-num-1; i >=0; i--) { int smaller = pq.poll(); pq.add(array[i]+smaller); } System.out.println(pq); return pq.peek(); }
点赞 4

相关推荐

11-03 12:40
中山大学 Java
勇敢的突尼斯海怪选钝...:楼主这拒意向话术好得体呀 !求问HR回复态度咋样呀
点赞 评论 收藏
分享
不知道怎么取名字_:两个方向 1.简历针对性准备下 2.面试前也需要准备的 主要还是要看各个公司需求,看公司行业和岗位描述,那里面已经写了对技术的需求,一份简历,不可能和所有嵌入式岗位都匹配的
投递北京经纬恒润科技股份有限公司等公司6个岗位
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务