(백준/BOJ) (Python) 5635 생일

  • by

(백준/BOJ) (Python) 5635 생일


https://www.acmicpc.net/problem/5635

문제

한 클래스의 학생의 생일이 주어지면 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 만듭니다.

입력

첫 번째 줄에는 절반 학생 수 n이 주어집니다.

(1 ≤ n ≤ 100)

다음 n 줄에는 각 학생의 이름과 생일이 “이름 dd mm yyyy”와 같은 형식으로 주어집니다.

이름은 해당 학생의 이름이며 최대 15자로 구성됩니다.

dd mm yyyy는 생일, 달, 년입니다.

(1990 ≤ yyyy ≤ 2010, 1 ≤ mm ≤ 12, 1 ≤ dd ≤ 31)

이름이 같거나 생일이 같은 사람은 없다.

출력

첫 번째 줄에 가장 나이가 적은 사람의 이름을, 두 번째 줄에 가장 나이가 많은 사람의 이름을 출력합니다.

입력 예 1 복사

5
Mickey 1 10 1991
Alice 30 12 1990
Tom 15 8 1993
Jerry 18 9 1990
Garfield 20 9 1990

출력 예 1 복사

Tom
Jerry


생각한 과정

https://dkan9634./51

(백준/BOJ) (Python) 5635 생일

https://www.acmicpc.net/problem/5635 5635: 생일 어떤 종류의 학생의 생일이 주어지면 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하십시오. www.acmicpc.net 문제 어떤 클래스에

dkan9634.

8개월 전에 쓴 투고이지만 너무 노가다로 풀린 것 같다.

그 당시에는 최고였습니다.

그러나 다시 풀었기 때문에 시간적으로 효율적으로 풀었다.



코드

n = int(input())

info = ()
for _ in range(n):
  n, d, m, y = input().rstrip().split()
  info.append((int(y), int(m), int(d), n))
info.sort()
print(info(-1)(3)) # 나이 가장 적은 사람
print(info(0)(3)) # 나이 가장 많은 사람