생일 소년

면접 대비

시간 제한1초메모리 제한512 MB

요약
직원 생일 주어진 비윤년 달력에서 겹치지 않고 직전 공백이 가장 긴 날짜를 고르며 동률이면 10월 27일 바로 뒤 날짜를 선택합니다.
난이도

보통10점 중 6점

유형
배열, 정렬, 구현, 완전 탐색
정답자
아직 제출이 없습니다

문제

보비는 새 회사에 막 입사했고, 인사부에서 사무실 달력에 자신의 생일을 적어 달라고 부탁했다. 생일 소년 보비는 특별한 기분을 느끼고 싶다! 또 보비는 관심을 받기 위해서라면 거짓말도 서슴지 않는다.

그는 사람들이 생일을 쇠거나 케이크를 먹은 지 오래될수록 새로운 생일이 다가올 때 더 좋아한다는 것을 알았다. 그래서 그는 생일 없이 보낼 수 있는 가장 긴 기간이 막 지나간 시점에 자신의 생일을 정하고 싶어 한다. 물론 동료와 생일이 겹치기를 바라지는 않는다.

보비가 최대한 특별한 기분을 느낄 수 있도록 가짜 생일을 지어내도록 도와줄 수 있는가? 보비는 윤년 따위는 신경 쓰지 않는다. 모든 해는 윤년이 아니고, 2월 29일이 생일인 사람은 아무도 없다고 가정해도 된다. 동점일 경우, 보비는 현재 날짜인 10월 27일보다 (엄격히) 뒤이면서 가장 빠른 날짜를 적기로 한다. 그러면 생일을 최대한 빨리 쇨 수 있기 때문이다.

그림 1: 예제 2. 달력 출처: http://printablecalendarholidays.com.

입력

  • 첫 줄에 새 사무실의 동료 수를 나타내는 정수 1 ≤ n ≤ 100이 주어진다.
  • 다음 n개의 줄에는 각각 동료 한 명의 정보가 주어진다. 각 줄은 이름(최대 20자의 대소문자)과 생일 날짜가 공백 하나로 구분되어 주어진다. 날짜는 mm-dd 형식이다.

출력

보비가 선택한 가짜 생일 날짜를 mm-dd 형식으로 출력한다.

예제4

  1. 예제 1

    입력
    3
    Henk 01-09
    Roos 09-20
    Pietje 11-11
    
    예상 출력
    09-19
    
  2. 예제 2

    입력
    16
    Henk 01-09
    Luc 12-31
    Jan 03-22
    Roos 09-20
    Pietje 11-11
    Anne 02-28
    Pierre 09-25
    Dan 12-15
    Lieze 11-17
    Charlotte 05-01
    Lenny 08-02
    Marc 04-25
    Martha 06-12
    John 03-26
    Matthew 01-20
    John 01-20
    
    예상 출력
    08-01
    
  3. 예제 3

    입력
    3
    JohnIII 04-29
    JohnVI 10-28
    JohnIIX 04-28
    
    예상 출력
    04-27
    
  4. 예제 4

    입력
    3
    CharlesII 04-30
    CharlesV 10-29
    CharlesVII 04-29
    
    예상 출력
    10-28