N
: 학생 수 (1 ≤ N ≤ 1,000)
k
: 점수 높은 사람 수 (1 ≤ k ≤ N )
x
: 각 학생의 점수 ( 0 ≤ x ≤ 10,000 )
✅ 입력 조건
1. N, k가 공백으로 구분되어 입력
2. N개의 점수 x들이 입력
✅ 출력 조건
1. 상 받는 커트라인 점수 출력
2. 커트라인 : 상 받는 사람들 중 점수가 가장 낮은 사람의 점수
각 학생의 점수 x들을 리스트로 입력받고 내림차순 정렬한다.
리스트의 인덱스는 0부터 시작하므로 정답에 k-1 인덱스에 있는 점수를 출력하면 된다.
N개 입력받기 →
리스트 sort()
→
최종 시간복잡도
로 1 ≤ N ≤ 1,000 조건에서 제한 시간 내에 연산이 가능하다.
sort()
함수로 내림차순 정렬하기.
N
, k
입력N
만큼 반복해서 x
입력x
저장한 리스트를 내림차순
정렬print문
을 실수로 삭제하지 않고 제출했다.import sys
input = sys.stdin.readline
# 1. N, k 입력
N, k = map(int, input().split())
# 2. N만큼 반복해서 x 입력
x_list = list(map(int, input().split()))
# 4. x 저장한 리스트를 내림차순 정렬
x_list.sort(reverse=True)
# 5. 커트라인 점수 출력
print(x_list[k-1])
출력 초과
가 발생했다. 코드에 불필요한 부분이 없는지 다시 한번 확인하는 시간을 가져야 겠다.