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월 1일에서 가장 가까운 일요일을 잡고 이보다 적거나 많은 날짜의 차를 구해서 7로 나머지 연산을 해서 처리했다.
function solution(a, b) {
const day = ['SUN','MON','TUE','WED','THU','FRI','SAT'];
const mon = [0,31,29,31,30,31,30,31,31,30,31,30,31];
let standardDay = 3; //일요일
let diffDay = b;
for(let i = 1; i < a; i++){
diffDay += mon[i];
}
let diff = diffDay - standardDay;
return diff < 0 ? day[(7 + diff)%7] : day[diff%7];
}javascript728x90
반응형
'Problem Solving' 카테고리의 다른 글
| 같은 숫자는 싫어 (0) | 2020.09.03 |
|---|---|
| 가운데 글자 가져오기 (0) | 2020.09.02 |
| K번째수 그리고 테스트케이스 2 (0) | 2020.09.02 |
| 체육복 그리고 테스트케이스 5 (0) | 2020.09.02 |
| 모의고사 (0) | 2020.09.02 |
언젠가는enumclass 님의 블로그입니다.