문제(출처: https://www.acmicpc.net/problem/2075)
< N번째 큰 수 >
문제 풀이
우선순위 큐를 사용해서 N번째 큰 수를 구한다.
my solution (Java)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Collections;
import java.util.PriorityQueue;
import java.util.StringTokenizer;
public class _2075_ { // N번째 큰 수
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int n = Integer.parseInt(bf.readLine());
PriorityQueue<Long> queue = new PriorityQueue<>(Collections.reverseOrder());
for (int i = 0; i < n; i++) {
st = new StringTokenizer(bf.readLine());
for (int j = 0; j < n; j++) {
queue.add(Long.parseLong(st.nextToken()));
}
}
long result = -1;
for (int i = 0; i < n; i++) {
result = queue.poll();
}
System.out.println(result);
}
}
Main
변수)
n
queue : 우선순위 큐 (내림차순)
- n 입력
- n*n 만큼 입력받아 우선순위 큐에 저장
- n번째 큰 수를 구하기 위해 반복문을 사용해서 n만큼 반복하여 result 구함
- result 출력
'🌞Algorithm > 🔥Baekjoon' 카테고리의 다른 글
[Baekjoon] 19638_센티와 마법의 뿅망치 (0) | 2023.07.17 |
---|---|
[Baekjoon] 13975_파일 합치기 3 (0) | 2023.07.14 |
[Baekjoon] 5525_IOIOI (0) | 2023.07.11 |
[Baekjoon] 15900_나무 탈출 (0) | 2023.07.07 |
[Baekjoon] 15903_카드 합체 놀이 (0) | 2023.07.02 |