Jieunny์˜ ๋ธ”๋กœ๊ทธ

[JS] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - 2016๋…„ ๋ณธ๋ฌธ

Study/Coding Test

[JS] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - 2016๋…„

Jieunny 2023. 1. 19. 09:27

๐Ÿ“Œ ๋ฌธ์ œ

2016๋…„ 1์›” 1์ผ์€ ๊ธˆ์š”์ผ์ž…๋‹ˆ๋‹ค. 2016๋…„ a์›” b์ผ์€ ๋ฌด์Šจ ์š”์ผ์ผ๊นŒ์š”? ๋‘ ์ˆ˜ a ,b๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 2016๋…„ a์›” b์ผ์ด ๋ฌด์Šจ ์š”์ผ์ธ์ง€ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•˜์„ธ์š”. ์š”์ผ์˜ ์ด๋ฆ„์€ ์ผ์š”์ผ๋ถ€ํ„ฐ ํ† ์š”์ผ๊นŒ์ง€ ๊ฐ๊ฐ SUN,MON,TUE,WED,THU,FRI,SAT

์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด a=5, b=24๋ผ๋ฉด 5์›” 24์ผ์€ ํ™”์š”์ผ์ด๋ฏ€๋กœ ๋ฌธ์ž์—ด "TUE"๋ฅผ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”.

โœ๏ธ ํ’€์ด

function solution(a, b) {
  let arr = [0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  let week = ["FRI", "SAT", "SUN", "MON", "TUE", "WED", "THU"];
  // 1์›” 1์ผ์ด ๊ธˆ์š”์ผ ์ด๋ฏ€๋กœ ๋ฐฐ์—ด์„ ๊ธˆ์š”์ผ ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์ค€๋‹ค.

  let passedDays = 0;	// 1์›” 1์ผ๋ถ€ํ„ฐ ์–ผ๋งˆ๋‚˜ ์ง€๋‚ฌ๋Š”์ง€ ๋”ํ•ด์ค„ ๋ณ€์ˆ˜

  for (let i = 1; i < a; i++){
  	passedDays += arr[i];
  }

  passedDays += b - 1;	// 1์›” 0์ผ ์•„๋‹ˆ๊ณ  1์ผ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋‹ˆ๊นŒ -1 ํ•ด์ฃผ๊ธฐ
  
  return week[passedDays % 7];
}

 

โž• Date ์‚ฌ์šฉํ•œ ํ’€์ด

function solution(a, b) {
  var answer = '';
  let day = ['SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT'];

  let dateStr = '2016' + '-' + a + '-' + b;
  let date = new Date(dateStr);
  answer = date.getDay();

  return day[answer];
}