alpyrithm_알파이리즘

[알고리즘][Python] 백준(BOJ) 5635 생일_파이썬 본문

Algorithm/백준 알고리즘_Python

[알고리즘][Python] 백준(BOJ) 5635 생일_파이썬

알파이 2020. 11. 8. 08:31

 

5635 생일    www.acmicpc.net/problem/5635

 

5635번: 생일

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

www.acmicpc.net

 

 

 

문제 풀기 전 공부할 것 : 정렬

 

 

 

 

 

 

 

풀이

<내용>

  • 이름, 일, 월, 연도를 이름과 연도+월+일로 저장한다.
    • 정렬을 위해 월과 일이 길이가 1이면(1 - 9) 앞에 0을 붙여서 저장한다.(01 - 09)
  • 생일을 기준으로 정렬한다.
  • 가장 나이 적은 사람과 많은 사람을 출력한다.

 

 

<코드>

import sys
input = sys.stdin.readline

n = int(input())
lst = []
for _ in range(n):
    name, d, m, y = input().rstrip().split()
    if len(m) == 1:
        m = '0'+m
    if len(d) == 1:
        d = '0'+d
    lst.append((name, y+m+d))
    
lst.sort(key=lambda x:int(x[1]))
print(lst[-1][0])
print(lst[0][0])

 

 

 

 

 

 

 

 

728x90
반응형
Comments