728x90
programmers.co.kr/learn/courses/30/lessons/12901
접근
2016년의 특정 달의 특정 일을 입력받아 요일을 출력해야 한다.
이를 위해 각 달이 몇 일까지 있는지 알면 편하다.
입력받은 월 전까지의 일 수를 모두 더한다음 보고자하는 일수 b를 더하고 -1을 해준다.
여기에 7로 나눈 나머지를 취하여 days의 인덱스로 활용한다.
1월 1일부터 5월 24일까지 더한 일수를 7로 나눈 나머지가 5가 된다. 이때 5가 화요일이되도록 하며 그 이후에 요일을 다음 인덱스부터 써주면된다. 넘어가면 0부터 다시
def solution(a, b):
months = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
days = ["THU","FRI","SAT","SUN","MON","TUE","WED"]
return days[(sum(months[:a-1])+b)%7]
'알고리즘 풀이 > 프로그래머스' 카테고리의 다른 글
[Level 3] 2xn 타일링 (0) | 2021.02.19 |
---|---|
[Level 1] 비밀 지도 (0) | 2021.02.19 |
[Level 1] 문자열 내 마음대로 정렬하기 (0) | 2021.02.19 |
[Level 1] 크레인 인형 뽑기 (0) | 2021.02.18 |
[고득점 KIT] 프린터 cpp (0) | 2021.02.12 |