백준 1924번 바로가기

나의 풀이

# 입력
import sys
from datetime import datetime
x, y = map(int, sys.stdin.readline().split())
days = ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN']

# 처리
today = datetime(2007, 1, 1)
target = datetime(2007, x, y)
dday = (target-today).days
print(days[dday%7])

CODE REVIEW

  1. 간만에 숨돌리기 용으로 푼 간단한 수학 문제. 아니 구현 문제.
  2. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다.라는 문제조건이 있긴 하지만 범용적으로 쓰는 datetime 모듈을 활용해서 풀어내었다.
  3. 이전에 짭군돌이 만들었을 때에 dday 구했던 기억이 난다.
  4. month = [31, 28, 31, 30 ... ]로 해서 month 인덱싱으로 풀 수도 있겠지만 웬만하면 datetime 씁시다 ㅎㅎ