PS/Programmers

    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 ..

    Programmers / Level 3 / 줄 서는 방법 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n, k) { let result = []; let numberList = Array.from({ length: n }, (_, idx) => idx + 1); /** * 현재 순서의 숫자를 구해서 반환하는 함수 * * @param {number[]} numberList 줄을 서야 할 사람들의 숫자가 담긴 리스트 * @returns {number} 현재 순서의 숫자 */ const getCurrentOrder = (numberList) => { // 순열에..