반응형
문제 설명
- 숫자로 암호화되어 있는 비밀 지도 2개와 해독 방법 메모지가 있다
- 각 배열의 원소들을 2진수를 변환하여 숫자 1은 "#", 0은 " " 공백 문자열로 판단한다
- 여기서 "#" 문자는 벽을 뜻하고, " "공백 문자열은 벽이 없는 부분이다
- 두 개의 비밀지도 중 하나라도 벽인 부분은 전체 지도의 벽을 뜻한다
- 전체 지도의 크기는 n, 두 개의 비밀지도를 arr1, arr2이라는 두 배열로 매개변수를 넘겨받는다
- 전체 지도를 해독하여 "#"과 " " 공백 문자열로 구성된 문자열 배열을 반환하는 solution 함수를 완성하시오
제한사항
- 1 ≤ n ≤ 16
- arr1, arr2는 길이 n인 정수 배열로 주어진다
- 정수 배열의 각 원소 x를 이진수로 변환했을 때의 길이는 n이하이다. 즉, 0 ≤ x ≤ 2^n-1을 만족한다
입출력 예시
전체 코드
function solution(n, arr1, arr2) {
let tempArr = [];
for (let i = 0; i < n; i++) {
tempArr.push(arr1[i] | arr2[i]);
}
tempArr = tempArr.map((item) =>
item.toString(2).replace(/1/g, "#").replace(/0/g, " ")
);
for (let i = 0; i < tempArr.length; i++) {
if (n - tempArr[i].length !== 0)
tempArr[i] = " ".repeat(n - tempArr[i].length) + tempArr[i];
}
return tempArr;
}
'Programmers' 카테고리의 다른 글
(Programmers) [Lv. 1] 예산 (0) | 2023.02.15 |
---|---|
(Programmers) [Lv. 0] 배열의 유사도 (0) | 2023.02.15 |
(Programmers) [Lv. 0] 짝수는 싫어요 (0) | 2023.02.15 |
(Programmers) [Lv. 0] 순서쌍의 개수 (0) | 2023.02.15 |
(Programmers) [Lv. 1] 삼총사 (0) | 2023.02.13 |