문제
https://school.programmers.co.kr/learn/courses/30/lessons/49994
프로그램 제작자
코드 중심 개발자를 고용하십시오. 배치 기반 위치 매칭. 프로그래머의 개발자별 프로필에 가입하고 기술 호환성이 좋은 회사와 연결하십시오.
Programmer.co.kr
// 캐릭터가 처음 걸어본 길의 길이 return
// 단, 좌표평면의 경계를 넘어가는 명령어는 무시
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;
}