프로그래머스 문제
<2016년>
2016년 안에서 월과 일을 주면 그에 맞춰서 요일을 리턴해주는 문제이다.
1) 2016년이 윤년으로 2월이 29일까지 있다.
이러한 부분을 주의하면서 문제를 풀어야한다.
예전에 알고리즘 수업에서 요일을 구하는 문제를 풀어던 기억을 더듬어서 풀어보았다. 구하고자하는 월, 일들을 모두 일로 변환해서 그 일수를 일주일인 7로 나눈 나머지를 사용한다. 나머지는 0부터 6까지 나오게 되는데 처음에 1월 1일이 0으로 시작했으니 0으로 떨어지게 되면 금요일, 1이 나머지면 토요일 이런식으로 1월 1일의 요일부터 시작하게 된다.
그러므로, day변수에 금요일부터 일주일을 나열해주었다. 월을 일로 변경해서 일수를 구해야하기에 month변수 안에 월별로 안에 일수를 넣어주었다. 위의 주의해야했던 2월도 잘 넣어주었다.
sum을 사용해서 슬라이싱한 월을 일로 바꾸고 주어진 일을 더해서 일수를 구하고 이를 7로 나누어 나머지를 구했다. 나머지를 다 구했으니 위의 요일들에 적용해서 리턴해주었는데 이 때, 인덱스를 생각해서 -1을 해서 정확한 값을 리턴되게하였다.
'공부 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] K번째수 (0) | 2021.05.17 |
---|---|
[프로그래머스] 두 개 뽑아서 더하기 (0) | 2021.05.14 |
[프로그래머스] x만큼 간격이 있는 n개의 숫자 (0) | 2021.05.12 |
[프로그래머스] 문자열 내 p와 y의 개수 (0) | 2021.05.11 |
[프로그래머스] 수박수박수박수박수박수? (0) | 2021.05.10 |