프로그래머스 LEVEL 1(비밀지도)

image

  • 사용 언어 : javascript

  • 해결 날짜 : 2022-10-03

  • 해결 방법 :
    • 두 지도의 각 행마다 or 비트 연산 및 2진수 변환을 통해 겹쳐진 지도의 공백과 벽을 구함
    • 1을 #으로, 0을 공백으로 변환 후 answer에 push()
  • 회고 :
    • 2진수 변환 시 padStart()로 앞자리에 패딩 추가 가능
  • 코드

    function solution(n, arr1, arr2) {
        const answer = [];
        for (let i = 0; i < n; i++) {
            let binary = (arr1[i] | arr2[i]).toString(2).padStart(n, 0);
            answer.push(binary.replaceAll(1, '#').replaceAll(0, ' '));
        }
        return answer;
    }
    
  • 출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges