본문 바로가기
Algorithm

[구현/수학] 백준 5635 생일 - Python

by jangThang 2022. 2. 7.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    5635번: 생일

    어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오.

    www.acmicpc.net

     

     

     

    2. 문제 풀이

     학생들의 생년월일을 입력받아 나이를 계산하는 문제입니다.

     

    2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학

     

    [Algorithm] 단골 1번 문제, 구현 / 수학

    [ Contents ] 1. 구현  단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하

    star7sss.tistory.com

     나이가 가장 적은 사람과 많은 사람을 구해야 합니다. 태어난 연도, 월, 일이 빠를수록(작을수록) 나이가 많습니다.

     

     

     

    3. 코드

    n = int(input())
    student = []
    for i in range(n):
        name, day, month, year = input().split()
        student.append([int(year), int(month), int(day), name])
    student.sort()
    print(student[n-1][3])
    print(student[0][3])

     학생들의 이름과 생년월일을 입력받습니다. 입력은 [이름/일/월/년] 순으로 되며, 저는 정렬하기 좋게 [년/월/일/이름] 순으로 바꿔서 저장했습니다.

     student.sort()를 하면 연도, 월, 일, 이름순으로 오름차순 정렬이 됩니다.

     가장 늦은(큰) 생년월일인 학생이 제일 나이가 어리고, 가장 이른(작은) 생년월일인 학생이 가장 나이가 많습니다.

     

     

    star가 되고나서 Tistory

    반응형

    댓글