CodingTest/programmers

[프로그래머스/Programmers] 2016년 - Python

ukunV 2021. 8. 13. 14:21

Link

 

코딩테스트 연습 - 2016년

2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까

programmers.co.kr

 

Solution

def solution(a, b):
    weekday = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT']
    month = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]

    count = b - 1

    for m in range(a - 1):
        count += month[m]

    return weekday[count % 7 - 2] # 2016년 1월 1일: 금요일 -> -2
🔑 key point: Indexing

 

Other Solution

import datetime

def solution(a,b):
    weekday = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT']

    return weekday[datetime.datetime(2016, a, b).weekday() + 1]