백준 온라인 저지 - 2007년(1924)
Baekjoon Problem #1924 - 특정 일자의 요일을 구하는 문제
오늘은 2007년 1월 1일 월요일이다. 그렇다면 2007년 x월 y일은 무슨 요일일까? 이를 알아내는 프로그램을 작성하시오.
- 입력
- 첫째 줄에 빈 칸을 사이에 두고 x(1≤x≤12)와 y(1≤y≤31)이 주어진다.
- 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다.
- 출력
- 첫째 줄에 x월 y일이 무슨 요일인지에 따라 SUN, MON, TUE, WED, THU, FRI, SAT중 하나를 출력한다.
예제 입력 1
1 1
예제 출력 1
MON
예제 입력 2
3 14
예제 출력 2
WED
예제 입력 3
9 2
예제 출력 3
SUN
예제 입력 4
12 25
예제 출력 4
TUE
My Solution in Python
x, y = map(int, input().split())
total = -1
for i in range(1, 13):
if i == 2: day = 28
elif i in (1, 3, 5, 7, 8, 10, 12): day = 31
else: day = 30
if x > i:
total += day
continue
else:
total += y
break
print(('MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN')[total % 7])
파이썬의 표준 라이브러리인 datetime 라이브러리를 사용하면 더욱 간단하게 풀 수 있습니다.
Another Solution in Python
import datetime
x, y = map(int, input().split())
print(('MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN')[datetime.date(2007, x, y).weekday()])
백준 온라인 저지 https://www.acmicpc.net/problem/1924
댓글남기기