이 문제는 N명의 학생들의 점수를 입력받아서 k명까지의 커트라인을 계산하여 출력하는 문제이다.
입력값을 나란히 받기 위해서 map함수를 이용해 공백으로 split하여 각 변수
에 값을 저장하였고
아래 점수들은 값을 리스트 형태로 score라는 변수에 저장하였다.
n, k = map(int,input().split())
score = list(map(int,input().split()))
그리고 sort함수를 이용하여 오름차순으로 점수를 정렬한 뒤에 reverse함수를 이용해서 내림차순으로 다시 정렬하였다.
sort함수를 이용하지 않고 reverse를 이용하게 되면 내림차순으로 정렬이 아니라 입력한 값을 역순으로만 정렬하기 때문이다.
그 다음 결과값은 처음에 입력한 k까지의 점수를 보여주어야 하는데 리스트의 인덱스는 0부터 시작하기 때문에 k-1의 값을 출력해주었다.
score.sort()
score.reverse()
print(score[k-1])
<전체코드>
import sys
input = sys.stdin.readline
n, k = map(int,input().split())
score = list(map(int,input().split()))
score.sort()
score.reverse()
# print(score)
print(score[k-1])
'백준 문제풀이' 카테고리의 다른 글
[백준 3009번 문제] 네 번째 점 (0) | 2022.08.11 |
---|---|
[백준 1427번 문제] 소트인사이드 (0) | 2022.08.10 |
[백준 25304번 문제] 영수증 (0) | 2022.08.08 |
[백준 2108번 문제] 통계학 (0) | 2022.08.07 |
[백준 11653번 문제] 소인수분해 (0) | 2022.08.03 |