๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

Programmers Lv.1 ํ•˜์ƒค๋“œ ์ˆ˜

by Youcodein 2022. 11. 11.
728x90
๋ฐ˜์‘ํ˜•

Programmers Lv.1 : ํ•˜์ƒค๋“œ ์ˆ˜

์–‘์˜ ์ •์ˆ˜ x๊ฐ€ ํ•˜์ƒค๋“œ ์ˆ˜์ด๋ ค๋ฉด x์˜ ์ž๋ฆฟ์ˆ˜์˜ ํ•ฉ์œผ๋กœ x๊ฐ€ ๋‚˜๋ˆ„์–ด์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 18์˜ ์ž๋ฆฟ์ˆ˜ ํ•ฉ์€ 1+8=9์ด๊ณ , 18์€ 9๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋ฏ€๋กœ 18์€ ํ•˜์ƒค๋“œ ์ˆ˜์ž…๋‹ˆ๋‹ค. ์ž์—ฐ์ˆ˜ x๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ x๊ฐ€ ํ•˜์ƒค๋“œ ์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ๊ฒ€์‚ฌํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

x๋Š” 1 ์ด์ƒ, 10000 ์ดํ•˜์ธ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.

๋‚ด ํ’€์ด


  function solution(x) {
      let sum =0;
      let arr = String(x).split("");
  
      for(let i=0; i<arr.length; i++){
          sum += Number(arr[i]);
      }
  
      return (x % sum === 0) ? true : false;
  }

String(x).split("")๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•œ๋ฒˆ์— ๋ฌธ์ž์—ด์„ ์ž˜๋ผ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  Number()๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐ์—ด์— ์ €์žฅํ•œ ๋ฌธ์ž์—ด์„ ์ˆซ์žํ™” ํ•˜๊ณ  ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์กฐ๊ฑด์— ๋งž๊ฒŒ ๋”ํ•œ๋‹ค
X๋ฅผ ๊ทธ ๊ฐ’์œผ๋กœ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ 0์ด ๋˜๋ฉด true, ์•„๋‹ˆ๋ฉด false

๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์˜ ํ’€์ด

function Harshad(n){
  return !(n % (n + "").split("").reduce((a, b) => +b + +a ));
}
728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€