본 게시물은 프로그래머스의 연습 문제 풀이입니다. 저작권은 (주) 그랩에게 있습니다
파이썬 코드
# 2016년
def solution(a, b):
# 진행된 일수
date = 0
# a월 1일까지의 일수 구하기
for i in range(1, a):
# i가 7이하일 때
if i <= 7:
# 2월이면 29일(윤년)
if i == 2:
date += 29
continue
# 홀수이면 31일
if i % 2 == 1:
date += 31
continue
# 짝수이면 30일
elif i % 2 == 0:
date += 30
continue
# i가 8이상일 때
elif i >= 8:
# 홀수이면 30일
if i % 2 == 1:
date += 30
continue
# 짝수이면 31일
elif i % 2 == 0:
date += 31
continue
# 주어진 일수 b를 date에 더하기
date += b
# 주어진 일수를 1을 빼고 7을 나눈 나머지를 요일에 넣는다
day = (date - 1) % 7
# 2016.1.1이 금요일이므로 if문으로 적절한 요일을 answer에 넣기
# 0이면 일주일 지난것과 같으므로 이것을 기준으로 지난 일수에 따른 요일 적용
if day == 0:
answer = "FRI"
elif day == 1:
answer = "SAT"
elif day == 2:
answer = "SUN"
elif day == 3:
answer = "MON"
elif day == 4:
answer = "TUE"
elif day == 5:
answer = "WED"
elif day == 6:
answer = "THU"
return answer
print(solution(5, 24))
Comment
문제에서 2016년이 윤달이라고 적혀있다. 이를 고려해서 if문으로 주어진 달의 1일까지 구한 후 모듈러 연산으로 남게되는 수를 기준으로 요일을 출력하면 된다.
Reference
'programming study > Algorithm' 카테고리의 다른 글
[프로그래머스] 같은 숫자는 싫어 - python 풀이 (0) | 2021.04.20 |
---|---|
[프로그래머스] 가운데 글자 가져오기 - python 풀이 (0) | 2021.04.19 |
[프로그래머스] K번째 수 - python 풀이 (0) | 2021.04.19 |
[프로그래머스] 체육복 - python 풀이 (0) | 2021.04.19 |
[프로그래머스] 모의고사 - python 풀이 (0) | 2021.04.18 |