minzee
개발 기록장
minzee
전체 방문자
오늘
어제
  • 분류 전체보기 (93)
    • 회고록 (0)
    • 활동 (15)
      • 우아한테크코스 7기 FE 프리코스 (4)
      • 원티드 프리온보딩 FE 챌린지 (1)
      • 위니브 엠버서더 3기 (10)
    • CS 공부 (5)
    • 코테 공부 (44)
      • BOJ (33)
      • Computer Algorithm (10)
      • Data Structures (1)
    • 개발 공부 (25)
      • Modern JS Deep Dive (5)
      • JavaScript & TypeScript (3)
      • React (0)
      • React-Native (0)
      • HTML & CSS (7)
      • Git & GitHub (1)
      • Kotlin (2)
      • Python (3)
      • C++ (2)
      • Linux (1)
    • 학교 (3)
      • 2 - 1 학기 (3)
      • 4 - 1 학기 (0)
    • 자격증 (1)
      • TOPCIT (0)
      • 정보처리기사 (1)
      • SQLD (0)

블로그 메뉴

  • Github
  • Naver Blog
  • Instagram
hELLO · Designed By 정상우.
minzee

개발 기록장

코테 공부/BOJ

[백준] 25305번 - 커트라인 (파이썬)

2024. 9. 13. 01:01

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
    '코테 공부/BOJ' 카테고리의 다른 글
    • [백준] 7568번 - 덩치 (파이썬)
    • [백준] 2947번 - 나무 조각 (파이썬)
    • [백준] 5635번 - 생일 (파이썬)
    • [백준] 1181번 - 단어 정렬 (파이썬)
    minzee
    minzee
    🇩🇮🇬🇮🇹🇦🇱 🇲🇪🇩🇮🇦 & 🇸🇴🇫🇹🇼🇦🇷🇪 🇨🇴🇳🇻🇪🇷🇬🇪🇳🇨🇪

    티스토리툴바