티스토리 뷰
1. 문제


2. 문제풀이
비밀지도는 두개로 이루어져 있는데 두 비밀지도를 합치면 암호를 해독하는 지도가 나온다는 내용입니다.
그래서 가로를 기준으로 공백은 0 #이 있는 칸은 1로 되어있어 2진법으로 바꾸어 배열에 삽입되어 있습니다.
그 값들을 합쳐 비밀지도를 해독하고 벽이 있는 부분은 #, 없는 부분은 공백으로 나타내야 합니다.
3. 풀이 방법
저는 일단 arr1과 arr2의 값들을 2진법으로 나타내고 그 값을 합치려고 했으나
javascript는 or연산을 사용하면 2진법으로 계산이 된다는 것을 알게 된 후 or연산을 한 후에 2진법으로 나타냈습니다.
그 다음 1과 0를 #과 공백으로 나타내기 위해 replace와 정규표현식을 이용해 바꿔주었습니다.
4. 전체적인 코드

toString(2)같은 경우는 2진법으로 바꾼다는 뜻입니다.
그리고 정규표현식에서 gi는 g는 전체, i는 대소문자 구별 x이기 때문에 전체를 바꿀 수 있었습니다.
마지막으로 앞에 공백이 나왔을 경우를 계산하여 concat을 이용해 n과 길이가 맞지 않으면 공백을 채워넣을 수 있도록 하였습니다.
programmers.co.kr/learn/courses/30/lessons/17681
코딩테스트 연습 - [1차] 비밀지도
비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다
programmers.co.kr
'알고리즘 > level 1' 카테고리의 다른 글
실패율 - javascript (0) | 2021.01.07 |
---|---|
다트게임 - javascript (0) | 2021.01.06 |
완주하지 못한 선수 (0) | 2020.12.23 |
최대공약수와 최소공배수 (0) | 2020.12.23 |
문자열 내 p와 y의 개수 (0) | 2020.12.11 |
- JOIN
- nodemailer error
- SQL
- tolowercase
- 프로그래머스
- 숫자야구게임
- 백준 7562 node
- AWS
- 바이러스 dfs
- 토마토3차원
- 카카오2018[1차]
- Level 1
- nodejs
- 코드테스트
- Express
- 회원가입
- 백준
- 534 error
- slice
- 로그인
- Replace
- Split
- 백준 7569 node
- sort
- 코딩테스트
- GROUP BY
- 정규표현식
- JavaScript
- left join
- smtp error
- Total
- Today
- Yesterday