[프로그래머스 레벨 1 JavaScript] '비밀지도' 풀이

glow_soon·2022년 2월 7일
0
post-thumbnail

문제 링크: https://programmers.co.kr/learn/courses/30/lessons/17681

function solution(n, arr1, arr2) {
  var answer = [];
  for (let i = 0; i < n; i++) {
    let bin1 = arr1[i].toString(2).padStart(n, 0);
    let bin2 = arr2[i].toString(2).padStart(n, 0);
    let result = "";
    for (let j = 0; j < n; j++) {
      if (bin1[j] === "1" || bin2[j] === "1") {
        result += "#";
      } else if (bin1[j] === "0" && bin2[j] === "0") {
        result += " ";
      }
    }
    answer.push(result);
  }
  return answer;
}

받아온 arr1, arr2 배열을 이진수로 변환-toString(2)
padStart() 함수로 자리수를 n으로 맞추고 빈자리에는 0삽입
생성된 두개의 이진수 자리수 하나씩 검사하면서 하나라도 1이면 '#' , 둘 다 0을 가지면 " " 넣기

profile
FE Developer

0개의 댓글

관련 채용 정보