๐Ÿ“ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋น„๋ฐ€์ง€๋„(JavaScript)

jaeyunim 2023. 2. 21. 15:26

์ •๋‹ต

function solution(n, arr1, arr2) {
  var answer = [];

  let sol = [];

  for (let i = 0; i < n; i++) {
    sol[i] = arr1[i] | arr2[i];
    sol[i] = sol[i].toString(2);

    sol[i] = sol[i].padStart(n,0).replace(/[1]/gi, "#");
    sol[i] = sol[i].padStart(n,0).replace(/[0]/gi, " ");
  }

  answer = sol;

  return answer;
}

์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์ฝ”๋“œ๋ฅผ ์ค„์ด์ง€ ์•Š๊ณ  ๋ช…์‹œ์ ์œผ๋กœ ํ‘œํ˜„ํ•จ

 

์„ค๋ช…

๋ฒฝ = 1,  ๋นˆ์นธ = 0 ์ด๋ผ๊ณ  ๋ฏธ๋ฆฌ ๋ฐ•์•„๋‘๊ณ  ์ƒ๊ฐํ•˜์ž.

 

์ง€๋„1๊ณผ ์ง€๋„2๋ฅผ ํ•ฉ์น ๋•Œ, ํ•˜๋‚˜๋ผ๋„ ๋ฒฝ์ด ์žˆ์œผ๋ฉด ๋ฒฝ์ด ๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ ๋น„ํŠธ์—ฐ์‚ฐ์ž OR๋ฅผ ์ด์šฉํ•œ๋‹ค.

 

๊ฐ๊ฐ์˜ ํ–‰ ๋งˆ๋‹ค ๊ณ„์‚ฐ์„ ํ•ด์ค˜์•ผ ํ•˜๋ฏ€๋กœ for๋ฌธ์„ ๋Œ๋ ค์ฃผ๋ฉฐ ํ–‰์˜ ๊ฒฐ๊ณผ๋“ค์„ sol๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค.

 

๋น„ํŠธ์—ฐ์‚ฐ์„ ํ–ˆ๋”๋ผ๋„ ๊ฒฐ๊ณผ๋Š” 10์ง„์ˆ˜๋กœ ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์— toString()์„ ์ด์šฉํ•ด 2์ง„์ˆ˜๋กœ ๋ฐ”๊พธ์–ด sol์— ์ €์žฅ์„ ํ•ด์ค€๋‹ค.

 

์ด์ œ 2์ง„์ˆ˜๋กœ ์ €์žฅ๋œ ๊ฐ๊ฐ์˜ ํ–‰๋“ค์„ 1 ->"#", 0 -> " " ์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๊ธฐ๋งŒ ํ•˜๋ฉด ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์˜จ๋‹ค.

 

๐Ÿ–(์ฃผ์˜!!) ๊ทธ์ „์— padStart()๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ์ง€๋„์˜ ํฌ๊ธฐ์— ๋งž๊ฒŒ ๋น„์–ด์žˆ๋Š” 0์„ ๋ฌธ์ž์—ด ์‹œ์ž‘๋ถ€๋ถ„์— ์ถ”๊ฐ€ํ•ด์ฃผ์ž.

 

๊ทธ๋ฆฌ๊ณ  replace()๋ฉ”์„œ๋“œ + ์ •๊ทœํ‘œํ˜„์‹์„ ์ด์šฉํ•ด "1"๊ณผ"0"์„ "#"๊ณผ " "์œผ๋กœ ๋ณ€ํ™˜ ํ•ด์ค€๋‹ค.