백준 알고리즘

백준 25305번 커트라인 문제풀이, 파이썬

고인호 2023. 2. 24. 17:21
반응형

백준 25305번 : 커트라인 문제풀이 [파이썬] 


<문제>

 

25305번 문제의 내용은 아래와 같습니다. 

 

 

커트라인

 

문제

2022 연세대학교 미래캠퍼스 슬기로운 코딩생활에 N명의 학생들이 응시했다.

이들 중 점수가 가장 높은 k명은 상을 받을 것이다. 이 때, 상을 받는 커트라인이 몇 점인지 구하라.

커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다.

입력

첫째 줄에는 응시자의 수 N과 상을 받는 사람의 수 k가 공백을 사이에 두고 주어진다.

둘째 줄에는 각 학생의 점수 x가 공백을 사이에 두고 주어진다.

출력

상을 받는 커트라인을 출력하라.

 

예제 입력 1 복사

5 2
100 76 85 93 98

예제 출력 1 복사

98

시험 응시자들 가운데 1등은 100점, 2등은 98점, 3등은 93점이다. 2등까지 상을 받으므로 커트라인은 98점이다.


 

 

<작성한 코드>

 


 

 

<코드 풀이>

문제에서 요구한대로 첫번째 줄에는 N, k 변수를 사용해 입력값을 받고

둘째 줄에는 학생들의 점수를 여러개 입력받아야하기 때문에 list를 사용했다. 

 

 

점수를 입력받은 x 리스트의 원소들은 위처럼 내림차순으로 정렬해주었다.

우리는 k명까지만 상을 주어야하기 때문에 그에 맞는 커트라인을 인덱스로 구해야한다. 

k명이 상을 받게된다면, 내림차순으로 정렬한 리스트에서

첫번째 값부터 시작하여 k번째 값까지 상을 받게 되는것이므로

그 커트라인은 k번째의 index에 놓인 원소가 된다. 

index는 0부터 시작하기 때문에

 

위처럼 k-1번째의 원소를 출력해주면 된다. 

반응형