99클럽 코테 스터디 26일차 TIL + 정렬

2024. 11. 22. 12:28Algorithm Problem Solving

https://www.acmicpc.net/problem/11004

 

1. 알고리즘! 생각해보자

1) priority queue 에 넣기
2) K번째까지 poll 하기

2. 해결 코드

import java.io.*;
import java.util.*;

public class Main {

	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		StringTokenizer st = new StringTokenizer(br.readLine());
		int N = Integer.parseInt(st.nextToken());
		int K = Integer.parseInt(st.nextToken());
		
		PriorityQueue<Integer> A = new PriorityQueue<>();
		
		st = new StringTokenizer(br.readLine());
		for (int i = 0; i < N; i++) {
			A.add(Integer.parseInt(st.nextToken()));
		}
		
        for(int i=0; i<K-1; i++) {
            A.poll();
        }
		System.out.println(A.poll());

	}

}

3. 레퍼런스