2022 연세대학교 미래캠퍼스 슬기로운 코딩생활에 명의 학생들이 응시했다.
이들 중 점수가 가장 높은 명은 상을 받을 것이다. 이 때, 상을 받는 커트라인이 몇 점인지 구하라.
커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다.
첫째 줄에는 응시자의 수
과 상을 받는 사람의 수
가 공백을 사이에 두고 주어진다.
둘째 줄에는 각 학생의 점수
가 공백을 사이에 두고 주어진다.
상을 받는 커트라인을 출력하라.
5 2
100 76 85 93 98
98
시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다.
상위 K명의 점수를 구해서 커트라인 즉 k명의 점수 중 가장 낮은 점수 구하기.
주어진 조건:
N log N의 시간복잡도를 가지기 때문에 정렬 알고리즘으로 결정.
list에 N개의 점수를 넣어 정렬하고나서 커트라인을 출력하기 위해 인덱스에 접근해야 함.
정렬 알고리즘으로 접근해 보겠습니다.
import sys
N, K = map(int, sys.stdin.readline().split())
list_ = list(map(int, sys.stdin.readline().split()))
list_.sort(reverse=True)
print(list_[K-1])