[프로그래머스] 방문 길이 - JavaScript

이은빈 EUNBIN·2021년 6월 26일
0
post-thumbnail

📌 문제

https://programmers.co.kr/learn/courses/30/lessons/49994



📌 풀이

function solution(dirs) {
    let move = { L: [-1, 0], R: [1, 0], U: [0, 1], D: [0, -1] };
    let now = [0, 0];
    let route = new Set();
    
    for (let dir of dirs) {
        let nowX = now[0] + move[dir][0];
        let nowY = now[1] + move[dir][1];
        
        if (nowX > 5 || nowX < -5 || nowY > 5 || nowY < -5) continue;
        
        route.add("" + now[0] + now[1] + nowX + nowY);
        route.add("" + nowX + nowY + now[0] + now[1]);
        
        now = [nowX, nowY];
    }
    
    return route.size / 2;
}

map으로 풀어보다가 우왕좌왕,,,,,
이 분 코드가 가장 잘 읽히고 깔끔했다 🥺👏🏻 (풀이의 코드와 거의 똑같습니당!)
풀 수 있을 것 같았는데 풀다가 너무 꼬이는 느낌이 들었다ㅠㅠ아쉬워
그래도 Set에 좀더 익숙해지는 시간이었으니까 잘 기억해둬야겠다 🌱






자바스크립트 Set

profile
Frontend Engineer & Value Creator

0개의 댓글