https://www.acmicpc.net/problem/25305
문제
2022 연세대학교 미래캠퍼스 슬기로운 코딩생활에 N명의 학생들이 응시했다.
이들 중 점수가 가장 높은 k명은 상을 받을 것이다. 이 때, 상을 받는 커트라인이 몇 점인지 구하라.
커트라인이란 상을 받는 사람들 중 점수가 가장 가장 낮은 사람의 점수를 말한다.
입력
첫째 줄에는 응시자의 수 N과 상을 받는 사람의 수 k가 공백을 사이에 두고 주어진다.
둘째 줄에는 각 학생의 점수 x가 공백을 사이에 두고 주어진다.
출력
상을 받는 커트라인을 출력하라.
문제 탐색하기
- N: 응시자
- K: 상 개수
상을 받을 수 있는 커트라인을 구해야한다.
즉 만약 내림차순으로 정렬을 하면 K번째 상이 커트라인이기 때문에
[K-1] 인덱스의 값을 구하면 된다.
코드 설계하기
1. 첫번째 줄 입력값: 응시자, 상 개수 ->N, K
2. 두번째 줄 입력값: 점수를 배열에 넣고 저장하기
3. reverse=True를 sort()함수 추가하여 내림차순으로 정렬하기
4. [K-1] 인덱스의 값 출력
코드
import sys
input = sys.stdin.read
lines = input().splitlines()
N, K = map(int, lines[0].split())
scores = list(map(int, lines[1].split()))
scores.sort(reverse=True)
print(scores[K-1])
'코테 공부 > BOJ' 카테고리의 다른 글
[백준] 7568번 - 덩치 (파이썬) (0) | 2024.09.15 |
---|---|
[백준] 2947번 - 나무 조각 (파이썬) (0) | 2024.09.14 |
[백준] 5635번 - 생일 (파이썬) (0) | 2024.09.12 |
[백준] 1181번 - 단어 정렬 (파이썬) (1) | 2024.09.11 |
[백준] 10814번 - 나이순 정렬 (파이썬) (1) | 2024.09.10 |