프로그래머스 Lv.1 2016년
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | function solution(a, b) { let whatday = { 0: 'THU', 1: 'FRI', 2: 'SAT', 3: 'SUN', 4: 'MON', 5: 'TUE', 6: 'WED', } let sum = 0; for(let i = 1; i < a; i++) { if(i === 4 || i === 6 || i === 9 || i === 11){ sum += 30; }else if(i === 2){ sum += 29; }else { sum += 31; } } sum += b; return whatday[sum%7]; } | cs |
객체
whatday
를 만들어 1월 1일이 금요일이기 때문에 금요일의 키값이 1일때로 가정하여 각 요일에 키 값을 넣어준다.반복문을 이용하여
i
가1
부터a
전까지 반복하면서, 월 별로 일 수를 변수sum
에 더해서 할당해준다. (2016년 2월은 윤달이기 때문에 29일)
sum
에b
를 더해주면 1월 1일로부터 지난 일수가 나오게 된다.
sum
을 7로 나눈 나머지가whatday
의 키가 되고, 키에 맞는 키 값이 return 된다.