akjfal

[Programmers]비밀지도 본문

알고리즘/programmers

[Programmers]비밀지도

akjfal 2021. 7. 4. 11:11
function solution(n, arr1, arr2) {
    var answer = new Array(n).fill("");
    // answer = arr1.map((value, idx) => )
    arr1 = arr1.map((num, idx) => {
        let binary = num.toString(2);
        return "0".repeat(n-binary.length) + binary;
    })
    arr2 = arr2.map((num, idx) => {
        let binary = num.toString(2);
        return "0".repeat(n-binary.length) + binary;
    })
    for(let i = 0; i < n; i++){
        for(let j = 0; j < n; j++){
            if(arr1[i].charAt(j) === '1' || arr2[i].charAt(j) === '1'){
                answer[i] += "#";
            }else{
                answer[i] += " ";
            }
        }
    }
    return answer;
}

 

처음에 무식하게 풀이한 방법이다. 하지만 문자열 처리관련으로 다른 분들이 더 아름답게 처리한 방법들이 많다.

1. 정수끼리 | 연산시 비트연산이된다. 예전에 배웠던것같은데 긴가민가 해서 안쓰고있던개념이다.

2. replace에서도 익명함수가 사용가능하단걸 처음알았다. 유용하게 써먹어야겠다.

3. 숫자화 연산자 : 처음안 개념이다 +"2" -> 2

'알고리즘 > programmers' 카테고리의 다른 글

[Programmers]다트게임  (0) 2021.07.04
[Programmers] 신규 아이디 추천  (0) 2021.07.03
[Programmers] [3차] n진수 게임  (0) 2021.07.03
[Programmers] 짝지어 제거하기  (0) 2021.06.24
[Programmers] 올바른 괄호  (0) 2021.06.24
Comments