intro : 역순으로 정렬할까 하다가 오름차순으로 정렬후 배열의 길이에서 순위값을 뺴서 커트라인의 값을 구했다.
문제
2022 연세대학교 미래캠퍼스 슬기로운 코딩생활에 N명의 학생들이 응시했다. 이들 중 점수가 가장 높은 k명은 상을 받을 것이다. 이 때, 상을 받는 커트라인이 몇 점인지 구하라. 커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다.
입력
첫째 줄에는 응시자의 수 N과 상을 받는 사람의 수 k가 공백을 사이에 두고 주어진다. 둘째 줄에는 각 학생의 점수 x가 공백을 사이에 두고 주어진다.
출력
상을 받는 커트라인을 출력하라.
문제 풀이 (112ms)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int length = Integer.parseInt(st.nextToken());
int count = Integer.parseInt(st.nextToken());
int[] array = new int[length];
st = new StringTokenizer(br.readLine());
for (int i = 0; i < length; i++) array[i] = Integer.parseInt(st.nextToken());
Arrays.sort(array);
System.out.println(array[length - count]);
br.close();
}
}