๐Ÿ’ก Level 1 | 3์ง„๋ฒ• ๋’ค์ง‘๊ธฐ (JavaScript)

rimmzยท2022๋…„ 5์›” 4์ผ
0

programmers

๋ชฉ๋ก ๋ณด๊ธฐ
4/15
post-thumbnail

๐Ÿ“Œ ๋ฌธ์ œ

  • ์ž์—ฐ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. n์„ 3์ง„๋ฒ• ์ƒ์—์„œ ์•ž๋’ค๋กœ ๋’ค์ง‘์€ ํ›„, ์ด๋ฅผ ๋‹ค์‹œ 10์ง„๋ฒ•์œผ๋กœ ํ‘œํ˜„ํ•œ ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

    https://programmers.co.kr/learn/courses/30/lessons/68935?language=javascript

๐Ÿ“ ๋ฌธ์ œ ํ’€์ด

function solution(n) {
  // 10์ง„๋ฒ• -> 3์ง„๋ฒ• ๋ณ€๊ฒฝ
  const toStringNum = n.toString(3);

  // 3์ง„๋ฒ• ์ˆซ์ž ๋’ค์ง‘๊ธฐ
  const reverseNum = toStringNum.split("").reverse().join("");

  // 3์ง„๋ฒ• -> 10์ง„๋ฒ• ๋ณ€๊ฒฝ
  const answer = parseInt(reverseNum, 3);

  return answer;
}

๐Ÿ’ฌ ์ •๋ฆฌ

n.toString(radix) : 10์ง„์ˆ˜๋ฅผ ๋‹ค๋ฅธ ์ง„์ˆ˜๋กœ ๋ณ€ํ™˜

  • ๊ฐ์ฒด๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜
  • radix(optional)

๋ฌธ์ž์—ด.split("").reverse().join("") : ํŠน์ • ๋ฌธ์ž์—ด ๋’ค์ง‘๊ธฐ

  • split("") : ๋ฌธ์ž์—ด์˜ element์— ๋”ฐ๋ผ ๋ฐฐ์—ด ์ƒ์„ฑ
  • reverse() : ๋ฐฐ์—ด์˜ ์ˆœ์„œ๋ฅผ ๋ฐ”๊ฟ”์ค€๋‹ค.
  • join("") : ๋ฐฐ์—ด์„ ๋ฌธ์ž์—ด(string)ํ˜•์œผ๋กœ ๋ณ€๊ฒฝ

parseInt(string, radix); : 10์ง„๋ฒ•์œผ๋กœ ๋ณ€๊ฒฝ

  • string : ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ•  ๋ฌธ์ž์—ด / radix : string ๋ฌธ์ž์—ด์„ ์ฝ์„ ์ง„๋ฒ• (optional)
profile
#์˜์š•๋„˜์น˜๋Š”#๐Ÿ’ป#โœจ#FE#๐Ÿ’ช๐Ÿป

0๊ฐœ์˜ ๋Œ“๊ธ€