99클럽 코테 스터디 20일차 TIL + 힙
2024. 11. 16. 16:11ㆍAlgorithm Problem Solving
https://www.acmicpc.net/problem/2075
1. 알고리즘! 생각해보자
우선순위큐는 기본적으로 오름차순으로 정렬이 된다.
N번째 큰 수를 찾아야하니까 내림차순으로 정렬이 되면 편할 것이다.
1) 내림차순 정렬되는 priority queue 생성
2) queue.add()
3) N-1 만큼 queue.remove()
4) N번째 숫자를 queue.poll()
2. 해결 코드
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
PriorityQueue<Integer> pq = new PriorityQueue<>(Collections.reverseOrder());
StringTokenizer st;
int N = Integer.parseInt(br.readLine());
for(int i=0;i<N;i++) {
st = new StringTokenizer(br.readLine());
for(int j=0;j<N;j++) {
pq.add(Integer.parseInt(st.nextToken()));
}
}
for(int i=0;i<N-1;i++) {
pq.remove();
}
bw.write(pq.poll()+"");
bw.flush();
bw.close();
}
}
3. 레퍼런스
'Algorithm Problem Solving' 카테고리의 다른 글
99클럽 코테 스터디 25일차 TIL + 힙 (0) | 2024.11.21 |
---|---|
99클럽 코테 스터디 24일차 TIL + 힙 (1) | 2024.11.20 |
99클럽 코테 스터디 19일차 TIL + 힙 (1) | 2024.11.15 |
99클럽 코테 스터디 18일차 TIL + 스택/큐 (1) | 2024.11.14 |
99클럽 코테 스터디 17일차 TIL + 스택/큐 (1) | 2024.11.13 |