[백준 Python] 11292번 키 큰 사람

iwtkmn_0219·2023년 1월 6일
0

백준 Python

목록 보기
1/32
post-thumbnail

백준 11292 키 큰 사람 (실버 5)

문제

민우는 학창시절 승부욕이 강해서 달리기를 할 때에도 누가 가장 빠른지를 중요하게 생각하고, 시험을 볼 때에도 누가 가장 성적이 높은지를 중요하게 생각한다. 이번에 반에서 키를 측정하였는데, 민우는 마찬가지로 누구의 키가 가장 큰지 궁금해한다. 민우를 도와 가장 키가 큰 사람을 찾아보자.

입력

입력은 여러개의 테스트케이스로 구성되어있다. 각 테스트케이스는 첫 번째 줄에 학생의 수 N (0 < N ≤ 50)이 주어지고, 이어서 N개의 줄에 각 학생의 이름과 키가 공백으로 구별되어 주어진다. 학생의 이름은 알파벳 대/소문자로만 이루어져 있고, 길이는 10을 넘지 않는다. 학생의 키는 소숫점 이하 2자리까지 주어진다. N이 0으로 주어지는 경우 프로그램을 종료한다.

출력

각 테스트케이스에 대해, 가장 키가 큰 학생의 이름을 한 줄에 출력한다. 같은 키의 사람이 여러명 일 경우 모두 출력해야 하며, 순서는 입력으로 들어온 순서를 유지해야 한다.

풀이 및 회고

풀이

간단히 새롭게 입력된 학생과 키에 대해 기존과 비교하여 '클 때', '같을 때'를 분류하여 기존의 최댓값 보다 큰 경우에는 리스트를 초기화하였고, 같은 경우에는 기존의 리스트에 추가하도록 처리하였다.

회고

오랜 기간 백준을 저멀리 치워두었다가 다시 재활치료겸 시작하게 되었다. 너무 오랜만에 해서 기본적인 입력조차 손이 빠르게 움직이지 않았다.. 방학동안 다시 살려봐야지..

코드

while True:
    n = int(input())
    if n == 0:
        break

    max_height = 0
    name_list = []
    for _ in range(n):
        name, height = input().split()
        height = float(height)
        if height > max_height:
            name_list = [name]
            max_height = height
        elif height == max_height:
            name_list.append(name)
    print(*name_list)

>> iwtkmn0219의 Github <<

0개의 댓글