본문 바로가기
Coding Test/JavaScript

[Javascript] (프로그래머스 level 1) 비밀 지도

by Chaedie 2022. 6. 30.
728x90

[Javascript] (프로그래머스 level 1) 비밀 지도

💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다.

내 풀이

function solution(n, arr1, arr2) {
    const arrOr = []
    for (let i = 0; i < n; i++) {
        arrOr[i] = arr1[i] | arr2[i];
    }
    const answer = arrOr
        .map((el) => el.toString(2).padStart(n, 0))
        .map((el) => el.replace(/1/g, '#').replace(/0/g, ' '));

    return answer
}
  • 비트연산으로 or해서 1이면 다 #로 바꾸고, 0이면 다 ‘ ‘으로 바꾸기!

다른 사람 풀이

var solution=(n,a,b)=>a.map((a,i)=>(a|b[i]).toString(2).padStart(n,0).replace(/0/g,' ').replace(/1/g,'#'))
  • 한줄 🤣

배운 점, 느낀 점

  • 굳이 배열 하나 새로 만들 필요가 없네요 🤣🤣
  • padStart() 사용해봤는데, 기억이 안나서 직접 map으로 0추가해줬다가 자꾸 테스트케이스 통과를 못했습니다. 그래서 구글링으로 padStart() 알아내어 문제를 풀었습니다. 발상은 맞는데 간단히 못푼게 조금 아쉽네요.

댓글