풀이
- 원래 우선순위큐 3개 선언해서 풀었는데 안돼서 그냥 배열 3개 선언해서 정렬해서 각각의 조의 역량 합을 우선순위큐에 저장 후 상단 힙 영역에 있는 수 출력했다
- 우선순위큐 3개로 왜 안되는지 이해가 안됨
package problem_solving.greedy;
import java.util.Arrays;
import java.util.Collections;
import java.util.PriorityQueue;
import java.util.Scanner;
public class BaekJoon_20044 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = Integer.parseInt(sc.next());
Integer [] arr = new Integer[n*2];
Integer [] arr1 = new Integer[n];
Integer [] arr2 = new Integer[n];
PriorityQueue<Integer>pq = new PriorityQueue<>();
int index1 = 0 ;
int index2 = 0 ;
for(int i= 0 ; i < n*2 ; i++) {
arr[i] = Integer.parseInt(sc.next());
}
Arrays.sort(arr);
for(int i= 0 ; i < n*2 ; i++) {
if( i < n ) {
arr1[index1++] = arr[i];
} else {
arr2[index2++] = arr[i];
}
}
Arrays.sort(arr2,Collections.reverseOrder());
for(int i= 0 ; i < arr1.length;i++) {
pq.offer(arr1[i]+arr2[i]);
}
System.out.println(pq.poll());
}
}