programmers

    Programmers / Level 2 / 메뉴 리뉴얼 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr /** * num개로 이루어진 가능한 모든 조합을 반환하는 함수 * * @param {string[]} order * @param {number[]} num 조합을 이룰 order의 개수 * @returns */ function getCombination(order, num) { let result = []; if (num === 1) return order.map((el) => [el]); order.forEach((fixed, idx) => { let rest = order.slice..

    Programmers / Level 2 / 피로도 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(k, dungeons) { let visited = Array.from({ length: dungeons.length }, () => false); let clearedCnt = 0; const DFS = (k, currentCnt) => { clearedCnt = Math.max(currentCnt, clearedCnt); for(let i=0; i= minRequiredFatigue && !visited[i]) { visited[i] = true; DF..

    Programmers / Level 0 / 다음에 올 숫자 / JS

    function isArithmeticSequence(common) { if(common[1] - common[0] === common[2] - common[1]) { return true; } else { return false; } } function isGeometricSequence(common) { if(common[1] / common[0] === common[2] / common[1]) { return true; } else { return false; } } function solution(common) { if(isArithmeticSequence(common)) { return common.at(-1) + common[1] - common[0]; } else if(..

    Programmers / Level 0 / 최빈값 구하기 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(array) { let answer = 0; let numberCountObj = {}; array.forEach((el) => { numberCountObj[el] = numberCountObj[el] + 1 || 1; }); let max = Math.max(...Object.values(numberCountObj)); let cnt = 0; Object.entries(numberCountObj).forEach(el => { if(el[1] === ma..

    Programmers / Level 0 / 연속된 수의 합 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(num, total) { let answer = []; let start = Math.ceil(total / num) - Math.floor(num / 2); let end = Math.floor(total / num) + Math.floor(num / 2); for(let i=start; i

    Programmers / Level 2 / 괄호 회전하기 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr /** * 괄호 문자열을 입력받아 한 번 회전해서 반환하는 함수 * * @param {string} s 괄호 문자열 * @returns {string} */ function rotateString(s) { let result = ''; let bracketList = s.split(''); bracketList.push(bracketList.shift()); result = bracketList.join(''); return result; } /** * 올바른 괄호 문자열인지 판단해서 결..