https://www.acmicpc.net/problem/2075
2075번: N번째 큰 수
첫째 줄에 N(1 ≤ N ≤ 1,500)이 주어진다. 다음 N개의 줄에는 각 줄마다 N개의 수가 주어진다. 표에 적힌 수는 -10억보다 크거나 같고, 10억보다 작거나 같은 정수이다.
www.acmicpc.net
해석 및 팁
이 문제는 우선순위 Queue를 사용하면 쉽게 풀리는 문제입니다. 먼저 내림차순으로 정렬되게 우선순위 Queue를 만든 후 숫자를 입력받아서 n-1번째까지 poll 한 후에 n번째 poll을 출력하면 되는 문제입니다.
Java 코드
import java.util.Scanner;
import java.util.PriorityQueue;
import java.util.Collections;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
PriorityQueue<Integer> q = new PriorityQueue<>(Collections.reverseOrder());
int n = sc.nextInt();
for(int i = 0; i < n * n; i++) q.add(sc.nextInt());
for(int i = 1; i < n; i++) q.poll();
System.out.println(q.poll());
}
}
'백준' 카테고리의 다른 글
백준 15990 1, 2, 3 더하기 5(Java) (0) | 2023.02.11 |
---|---|
백준 5567 결혼식(Java) (0) | 2023.02.10 |
백준 15988 1, 2, 3 더하기 3(Java) (0) | 2023.02.10 |
백준 15664 N과 M (10)(Java) (0) | 2023.02.10 |
백준 18111 마인크래프트(Java) (0) | 2023.02.10 |