[SWEA] 2056 | 연월일 달력

Gaanii·2024년 11월 8일

Problem Solving

목록 보기
113/210
post-thumbnail

문제링크


2056 | 연월일 달력



풀이과정


각 달의 마지막날짜를 딕셔너리로 만들어주자.
그리고 입력받은 날짜를 str로 받아 슬라이싱해서 연, 월, 일을 나눠주고
월이 1 ~ 12 사이에 있으면서 일이 1 ~ 해당 월의 마지막 날짜 사이에 있으면 날짜를 저장하고 아니라면 -1을 저장해서 출력해주면 된다.


코드


days = {1: 31, 2: 28, 3:31, 4:30, 5:31, 6: 30, 7: 31, 8: 31, 9: 30, 10: 31, 11: 30, 12: 31}
T = int(input())

for test_case in range(1, T+1):
    result = ''
    full = str(input())
    y = full[0:4]
    m = full[4:6]
    d = full[6:8]

    if 1 <= int(m) <= 12 and 1 <= int(d) <= days[int(m)]:
        result = y + '/' + m + '/' + d
    else:
        result += '-1'

    print(f'#{test_case} {result}')



결과


정답

0개의 댓글