본문 바로가기
*Algorithm/Programmers_Level1

[programmers] 프로그래머스 Level1 2016년(파이썬 Python)

by codinguser 2020. 8. 27.

programmers
(주)그렙

[programmers] 프로그래머스 Level1 2016년

(파이썬 Python)

* 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제
* 소스 코드 및 정리한 내용의 저작권은 글쓴이에게 있습니다.

 

 

 

 

프로그래머스 Level1 2016년


1) 문제

 

프로그래머스 2016년

 

코딩테스트 연습 - 2016년

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

programmers.co.kr


2) 풀이 과정

 

문제에서 주어진 것을 토대로 배열을 삼았다.

이 문제는 한번 봤었던 경험이 있어서 자신있었지만

 

처음 풀었을때는 안풀렸다.

 

얼핏 들어봤던 모듈이라

문제에서 주어진 그대로 배열을 만들었었다.

answer = ['SUN', 'MON', 'TUE' ... , 'SAT']

 

하지만, 순서를 바꿔보니 되더라..

엑셀 공부했었을 때, 이와 비슷한 함수(?)를 봤었던지라 저 순서를 바꿔서

MON을 처음으로 꺼내놨더니 됬다.


3) 코드

 

1
2
3
4
5
6
import datetime
 
def solution(a, b):
    answer = ['MON''TUE''WED''THU''FRI''SAT''SUN']
    
    return answer[datetime.date(2016, a, b).weekday()]
cs

4) 정리 노트

 

datetime모듈

 

day = datetime.date(2016, a, b).weekday()

 

weekday() : 요일 반환(0:월, 1:화, 2:수, 3:목, 4:금 ,5:토, 6:일)

 

이 문제를 만약 C++로 푼다면.. 어떻게 풀어야 할 까?.

파이썬에게 정말 감사하다

 

파이썬과 C++를 각 목적에 맞게끔 잘 사용하는게 좋을 것 같다.

 

파이썬 : 코딩 테스트

C++ : 시간이나 메모리 제한이 있는 알고리즘 대회

 


 

댓글