아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

코딩 바이오리듬

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

요약
생년월일과 N개의 날짜 각각에 대해 자릿수 차이의 제곱으로 코딩 바이오리듬 값을 계산하고, 값이 가장 큰 날짜 중 가장 이른 날짜를 출력한다.
난이도

쉬움10점 중 2점

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

문제

바이오리듬(biorhythm)이라는 이론을 들어본 적이 있는가? 바이오리듬은 인체에 신체, 감성, 지성의 세 가지 주기가 생년월일에 따라 어떤 패턴으로 나타나고, 이 패턴의 조합에 따라 능력이나 활동 효율에 차이가 있다는 주장이다.

주헌이는 날마다 달라지는 본인의 코딩 실력도 혹시 바이오리듬의 영향이 아닐까 하는 의구심이 들어 수년간 연구를 진행했다. 그 결과 코딩과 바이오리듬 사이에 밀접한 연관이 있다는 사실을 발견했고, 이를 코딩 바이오리듬이라는 새로운 개념으로 정의하기로 했다. 주헌이가 발견한 코딩 바이오리듬의 값은 생년월일과 날짜를 바탕으로 다음과 같이 계산된다.

'연도'를 Y(y)Y(y), '월'을 M(m)M(m), '일'을 D(d)D(d)의 형식이라고 할 때, 자신의 생일은 "YYYY:MM:DDYYYY : MM : DD"로, 자신이 코딩할 날짜는 "yyyy:mm:ddyyyy : mm : dd"로 정의하고, 편의상 "Y1Y2Y3Y4:M1M2:D1D2Y_1Y_2Y_3Y_4 : M_1M_2 : D_1D_2", "y1y2y3y4:m1m2:d1d2y_1y_2y_3y_4 : m_1m_2 : d_1d_2"라고 하자. 이때 코딩 바이오리듬의 값은 아래 공식으로 구할 수 있다.

∑i=14(Yi−yi)2×∑j=12(Mj−mj)2×∑k=12(Dk−dk)2\displaystyle \sum_{i=1}^4 {(Y_i-y_i})^2 \times \sum_{j=1}^2 {(M_j-m_j})^2 \times \sum_{k=1}^2 {(D_k-d_k})^2

예를 들어 자신의 생년월일이 2000년 01월 01일이고, 코딩할 날짜가 2021년 10월 30일이면 코딩 바이오리듬의 값은 아래 공식으로 계산된다.

Y1Y2Y3Y4:M1M2:D1D2=2000:01:01Y_1Y_2Y_3Y_4 : M_1M_2 : D_1D_2 = 2000 : 01 : 01

y1y2y3y4:m1m2:d1d2=2021:10:30y_1y_2y_3y_4 : m_1m_2 : d_1d_2 = 2021 : 10 : 30

코딩 바이오리듬 ={(2−2)2+(0−0)2+(0−2)2+(0−1)2}×{(0−1)2+(1−0)2}×{(0−3)2+(1−0)2}= \{(2-2)^2+(0-0)^2+(0-2)^2+(0-1)^2\} \times \{(0-1)^2+(1-0)^2\} \times \{(0-3)^2+(1-0)^2\}

=5×2×10=100= 5 \times 2 \times 10 = 100

누군가의 생년월일과 그 사람이 코딩할 N일의 날짜가 주어질 때, 그중에서 그 사람의 코딩 바이오리듬이 가장 높은 날의 날짜를 출력하여라. 가장 높은 값을 가지는 날짜가 여러 개라면, 그중에서 가장 빠른 날짜를 출력한다.

입력

첫 번째 줄에 사람의 생년월일이 주어진다.

두 번째 줄에 그 사람이 코딩할 날짜의 일수 N이 주어진다. ( 2 ≤ N ≤ 1000 )

세 번째 줄부터 이후 N개의 줄에 걸쳐서 코딩할 날짜가 주어진다. 코딩할 날짜는 반드시 생년월일 이후임이 보장되며, 같은 날짜가 2개 이상 주어지지 않는다.

모든 날짜 형식은 YYYYMMDDYYYYMMDD 형태로 주어지며, 1000년 01월 01일부터 9999년 12월 31일까지 태양력상으로 실제로 존재하는 날짜만 입력으로 주어진다.

출력

입력받은 코딩할 날짜 중에서 코딩 바이오리듬이 가장 높은 날의 날짜를 YYYYMMDDYYYYMMDD 형태로 출력한다.

가장 높은 값을 가지는 날이 여러 개라면, 그중에서 가장 빠른 날짜를 출력한다.

예제2

  1. 예제 1

    입력
    20000101
    3
    20211030
    20211031
    20131114
    
    예상 출력
    20131114
    
  2. 예제 2

    입력
    20301030
    2
    99991231
    20301225
    
    예상 출력
    99991231