PS
Programmers / Level 2 / 방문 길이 / JS
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function isValidPosition(x, y) { if(x 5) return false; if(y 5) return false; return true; } function solution(dirs) { let result = ''; let routeSet = new Set(); let [curX, curY] = [0, 0]; const moveObj = { U: [0, 1], D: [0, -1], L: [-1, 0], R: [1, 0],..
Programmers / Level 2 / 할인 행사 / JS
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr /** * 원하는 제품명과 제품수량들이 담긴 각각의 리스트를 받아서 * key:제품명, value:제품수량을 가지는 Map으로 초기화 하는 함수 * * @param {string[]} want 원하는 제품명들이 담긴 리스트 * @param {number[]} number 원하는 제품수량들이 담긴 리스트 * @param {Map} wantCountMap 초기화할 Map */ function initWantCountObject(want, number, wantCountMap) { const ..
Programmers / Level 2 / 연속 부분 수열 합의 개수 / JS
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(elements) { const ELEMENTS_LEN = elements.length; let sumSet = new Set(); let [start, end] = [0, 0]; for (let i = 1; i
Programmers / Level 2 / [3차] 압축 / JS
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr let dictionary = new Map(); /** * A:1, B:1, ... , Z:26 으로 사전을 초기화하는 함수 */ function initDictionary() { let alphabetList = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split(''); alphabetList.forEach((el, idx) => { dictionary.set(el, idx + 1); }); } /** * 사전을 계속 업데이트 하면서 결과값을 반환하는 함수 * * @par..
Programmers / Level 0 / 캐릭터의 좌표 / JS
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(keyinput, board) { const [MAX_WIDTH, MAX_HEIGHT] = board; let moveObj = { "left": [-1, 0], "right": [1, 0], "up": [0, 1], "down": [0, -1] }; let cur = [0, 0]; for(let input of keyinput) { const [MOVE_COL, MOVE_ROW] = moveObj[input]; const [CUR_COL, CUR_ROW]..
Programmers / Level 2 / 귤 고르기 / JS
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(k, tangerine) { let tangerineKindCountObj = {}; tangerine.forEach((el) => { tangerineKindCountObj[el] = tangerineKindCountObj[el] + 1 || 1; }); let tangerineCountList = Object.values(tangerineKindCountObj); tangerineCountList.sort((a, b) => b - a); let cnt ..