๐Ÿ“Œ 1. ๋ฌธ์ œ


์ฐจ๋Ÿ‰ 10๋ถ€์ œ


์„œ์šธ์‹œ๋Š” 6์›” 1์ผ๋ถ€ํ„ฐ ๊ตํ†ต ํ˜ผ์žก์„ ๋ง‰๊ธฐ ์œ„ํ•ด์„œ ์ž๋™์ฐจ 10๋ถ€์ œ๋ฅผ ์‹œํ–‰ํ•œ๋‹ค. ์ž๋™์ฐจ 10๋ถ€์ œ๋Š” ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž์™€ ๋‚ ์งœ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ ์ผ์น˜ํ•˜๋ฉด ํ•ด๋‹น ์ž๋™์ฐจ์˜ ์šดํ–‰์„ ๊ธˆ ์ง€ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ 7์ด๋ฉด 7์ผ, 17์ผ, 27์ผ์— ์šดํ–‰ํ•˜ ์ง€ ๋ชปํ•œ๋‹ค. ๋˜ํ•œ, ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ 0์ด๋ฉด 10์ผ, 20์ผ, 30์ผ์— ์šดํ–‰ํ•˜์ง€ ๋ชปํ•œ ๋‹ค.


์—ฌ๋Ÿฌ๋ถ„๋“ค์€ ์ผ์ผ ๊ฒฝ์ฐฐ๊ด€์ด ๋˜์–ด 10๋ถ€์ œ๋ฅผ ์œ„๋ฐ˜ํ•˜๋Š” ์ž๋™์ฐจ์˜ ๋Œ€์ˆ˜๋ฅผ ์„ธ๋Š” ๋ด‰์‚ฌํ™œ๋™์„ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๋‚ ์งœ์˜ ์ผ์˜ ์ž๋ฆฌ ์ˆซ์ž๊ฐ€ ์ฃผ์–ด์ง€๊ณ  7๋Œ€์˜ ์ž๋™์ฐจ ๋ฒˆํ˜ธ์˜ ๋ ๋‘ ์ž๋ฆฌ ์ˆ˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ ์œ„๋ฐ˜ํ•˜๋Š” ์ž๋™์ฐจ์˜ ๋Œ€์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.


์ž…๋ ฅ์˜ˆ์ œ ์ถœ๋ ฅ์˜ˆ์ œ
3,[23,25,11,47,53,17,35] 3


โœ ํ’€์ด

function solution(day, arr) {
  let answer = 0;
  for (let i = 0; i < arr.length; i++) {
    if (day.toString() === arr[i].toString().split("")[1]) {
      answer++;
    }
  }
  return answer;
}

๐Ÿ‘ Best

function solution(arr) {
  let answer = 0;
  for (let i of arr) {
    if (i % 10 === day) answer++;
  }
  return answer;
}


  • ๊ฐ„๋‹จํ•˜๊ฒŒ ํ’€๊ธฐ.. 1์ฐจ์›์ ์œผ๋กœ ์ƒ๊ฐํ•˜์ง€ ๋ง๊ธฐ..


๐Ÿ“Œ 2. ๋ฌธ์ œ


์ผ๊ณฑ ๋‚œ์Ÿ์ด


์™•๋น„๋ฅผ ํ”ผํ•ด ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋“ค๊ณผ ํ•จ๊ป˜ ํ‰ํ™”๋กญ๊ฒŒ ์ƒํ™œํ•˜๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ์—๊ฒŒ ์œ„๊ธฐ๊ฐ€ ์ฐพ์•„์™”๋‹ค. ์ผ๊ณผ๋ฅผ ๋งˆ์น˜๊ณ  ๋Œ์•„์˜จ ๋‚œ์Ÿ์ด๊ฐ€ ์ผ๊ณฑ ๋ช…์ด ์•„๋‹Œ ์•„ํ™‰ ๋ช…์ด์—ˆ๋˜ ๊ฒƒ์ด๋‹ค. ์•„ํ™‰ ๋ช…์˜ ๋‚œ์Ÿ์ด๋Š” ๋ชจ๋‘ ์ž์‹ ์ด โ€œ๋ฐฑ์„ค ๊ณต์ฃผ์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ดโ€์˜ ์ฃผ์ธ๊ณต์ด๋ผ๊ณ  ์ฃผ์žฅํ–ˆ๋‹ค. ๋›ฐ์–ด๋‚œ ์ˆ˜ํ•™์  ์ง๊ด€๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ๋Š”, ๋‹คํ–‰์Šค๋Ÿฝ๊ฒŒ๋„ ์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค์˜ ํ•ฉ์ด 100์ด ๋จ์„ ๊ธฐ์–ตํ•ด ๋ƒˆ๋‹ค. ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ฐฑ์„ค๊ณต์ฃผ๋ฅผ ๋„์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋ฅผ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ ์˜ค.


์•„ํ™‰ ๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ๋‚œ์Ÿ์ด๋“ค์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ํ‚ค๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š” ์ž์—ฐ์ˆ˜์ด๋ฉฐ, ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๋ฉฐ, ๊ฐ€๋Šฅํ•œ ์ •๋‹ต์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€์ธ ๊ฒฝ์šฐ์—๋Š” ์•„๋ฌด๊ฑฐ๋‚˜ ์ถœ๋ ฅํ•œ๋‹ค.


์ž…๋ ฅ์˜ˆ์ œ ์ถœ๋ ฅ์˜ˆ์ œ
20 7 23 19 10 15 25 8 13 20 7 23 19 10 8 13


โœ ํ’€์ด

function solution(arr) {
  let answer = arr;
  let sum = arr.reduce((a, b) => a + b);
  console.log(sum);
  for (let i = 0; i < arr.length - 1; i++) {
    for (let j = i + 1; j < arr.length; j++) {
      if (sum - (arr[i] + arr[j]) === 100) {
        arr.splice(i, 1);
        arr.splice(j - 1, 1);
      }
    }
  }
  return answer;
}


  • ํ•ฉ์ด 100์ด๋ผ๋Š” ๊ฒƒ์€ ์ž˜๋ชป ๋œ ๋‘ ์š”์†Œ๊ฐ€ ๋น ์กŒ์„ ๋•Œ ํ•ฉ์ด 100์ด ๋‚˜์˜จ๋‹ค๋Š” ์ 
  • ์ด์ค‘ for๋ฌธ ์ž‘์„ฑํ•  ๋•Œ i์™€ j๊ฐ€ ๊ฒน์น˜์ง€ ์•Š๊ฒŒ j๋Š” i+1๋กœ ๊ธฐ์ค€์„ ์žก๊ธฐ
  • ์ด์ค‘ for๋ฌธ ๋‚ด์—์„œ splice ์‚ฌ์šฉ์‹œ, index๊ฐ€ ๋ฐ”๋€” ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์—ผ๋‘ํ•˜๊ณ  splice์‚ฌ์šฉ, ๋’ค์— ์žˆ๋Š” index๋ฅผ ๋จผ์ € ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ / i ์ œ๊ฑฐ ํ›„ j-1๋กœ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ”๊ฟ”์ค˜์•ผ ํ•จ


๐Ÿ“Œ 3. ๋ฌธ์ œ


๋Œ€๋ฌธ์ž ์ฐพ๊ธฐ


ํ•œ๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ํ•ด๋‹น ๋ฌธ์ž์—ด์— ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž๊ฐ€ ๋ช‡ ๊ฐœ ์žˆ๋Š”์ง€ ์•Œ์•„๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ ์„ ์ž‘์„ฑํ•˜์„ธ์š”.


์ž…๋ ฅ์˜ˆ์ œ ์ถœ๋ ฅ์˜ˆ์ œ
โ€œKoreaTimeGoodโ€ 3


โœ ํ’€์ด

function solution(s) {
  let answer = 0;
  for (let x of s) {
    if (x === x.toUpperCase()) {
      answer++;
    }
  }
  return answer;
}


  • ์ด ๋ฌธ์ œ๋Š” ๋‚œ์ด๋„๊ฐ€ ์žˆ๋Š” ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์—ˆ์ง€๋งŒ, charCodeAt์— ๋Œ€ํ•ด ์ƒˆ๋กœ ๋ฐฐ์›Œ์„œ ๋‚จ๊ฒจ๋‘๊ณ  ์‹ถ์—ˆ๋‹ค.
  • ์šฐ์„  ์ผ๋ฐ˜์ ์œผ๋กœ toUpperCase๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ด๋‹ค. x๋ฅผ toUpperCase๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ธฐ์กด์˜ x๋ฅผ ๋ณ€ํ™”์‹œํ‚ค์ง€ ์•Š๊ณ  ๋Œ€๋ฌธ์ž๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์–ด์„œ ๋น„๊ตํ•˜์—ฌ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.
  • charCodeAt๋Š” ๋ฌธ์ž๋ฅผ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ•ด์ฃผ๋Š”๋ฐ ๋Œ€๋ฌธ์ž๋Š” 65~90๊นŒ์ง€, ์†Œ๋ฌธ์ž๋Š” 97~122๊นŒ์ง€ ํ•ด๋‹น๋œ๋‹ค.