백준
백준 11004 K번째 수(Java)
Park DJ
2023. 1. 21. 16:21
https://www.acmicpc.net/problem/11004
11004번: K번째 수
수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오.
www.acmicpc.net
해석 및 팁
이 문제는 단순히 sc.nextInt()와 Arrays.sort를 사용하면 시간초과가 발생합니다. 따라서 BufferedReader와 Collections.sort를 사용해주어야 합니다.
Java 코드
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());
ArrayList<Integer> list = new ArrayList<>();
st = new StringTokenizer(br.readLine());
for(int i = 0; i < n; i++) list.add(Integer.parseInt(st.nextToken()));
Collections.sort(list);
System.out.println(list.get(k-1));
}
}