코딩테스트/Baekjoon
[백준] 1924:2007년 - Python
지윤공원🌳
2021. 5. 27. 05:13
728x90
📖 문제 설명
오늘은 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중 하나를 출력한다.
💻 나의 코드
week = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"] # 출력할 요일들을 일~월 순으로 초기화
months = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] # 월별 최대 일수 초기화 (1~12월)
month, day = map(int, input().split())
# month-1미만 인덱스까지의 months를 sum하고 day를 더한 값을 7로 나눈 나머지가 인덱스로 사용됨
print(week[(sum(months[:month-1]) + day) % 7])
📜 채점 결과
100
💬 배운 것
- : 슬라이싱을 사용하면 쉽게 연산을 할 수 있습니다.
month-1미만까지의 합을 구할 때, for문을 사용하지 않아도 됩니다.
728x90