//把最大的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();     }