본문 바로가기

알고리즘 공부/프로그래머스 > Python3

[프로그래머스] 2016년

https://programmers.co.kr/learn/courses/30/lessons/12901

 

코딩테스트 연습 - 2016년

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

programmers.co.kr

 

[정답]

 

1. 문제에서 2016년 1월 1일은 금요일이라고 한다. 진짜 달력을 찾아보니 정말로 금요일이었다. 그래서 calendar모듈을 사용하기로 하였다. ( 어느정도 꼼수를 부린 것이다,,ㅎㅎ)

2. calendar.weekday()를 사용하여 요일에 대한 숫자를 n_date에 넣는다.

3. 리스트 date에 요일을 적는다. MON부터 시작한 이유는 calendar.weekday()가 월요일을 0으로 하기 때문이다.

4. 리스트 date에서 n_date번째의 문자열을 answer에 넣는다.

5. answer을 return한다.


calendar 모듈

- calendar.calendar(연도) : 해당 연도의 달력을 보여준다.

- calendar.weekday(연도, 월, 일) : 해당 날짜의 요일을 알려준다./ 0은 월요일, 1은 화요일,,,

- calendar.monthrange(연도, 월) : 해당 월의 1일이 무슨 요일인지와 그 달이 며칠까지 있는지 보여준다.