문제 설명
문제 해결
네이버 캘린더 앱에 들어가서 2016년 각 월의 일이 얼마나 있는지 파악한다.
날이 얼마나 지났는지 계산을 하여 나머지 연산을 이용해 몇요일이 지났는지 구한다.
def solve(a, b):
res = ("FRI","SAT","SUN","MON","TUE","WED","THU")
day = (31, 29, 31, 30, 31,30, 31, 31, 30, 31, 30, 31)
return res[(((sum(day[:a]) - (day[a-1] - b)) % 7) -1)]
def solution(a, b):
answer = solve(a,b)
return answer
물론 억지로 한 줄을 만들 수 있다.
def solve(a, b):
return ("FRI","SAT","SUN","MON","TUE","WED","THU")[(((sum((31, 29, 31, 30, 31,30, 31, 31, 30, 31, 30, 31)[:a]) - ((31, 29, 31, 30, 31,30, 31, 31, 30, 31, 30, 31)[a-1] - b)) % 7) -1)]
def solution(a, b):
answer = solve(a,b)
return answer
'Algorithm > 프로그래머스 연습 문제' 카테고리의 다른 글
프로그래머스 / 코딩 테스트 / 튜플 (0) | 2020.12.25 |
---|---|
프로그래머스 / 코딩 테스트 / 멀쩡한 사각형 (0) | 2020.12.25 |
프로그래머스 / 코딩 테스트 / K번째 수 (0) | 2020.12.25 |
프로그래머스 / 코딩 테스트 / 완주하지 못한 선수 (0) | 2020.12.25 |
프로그래머스 / 코딩 테스트 / 크레인 인형뽑기 게임 (0) | 2020.12.25 |