js

    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) => { // 순열에..

    Programmers / Level 2 / 2 x n 타일링 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n) { const DIVISOR = 1e9 + 7; let dp = [0, 1, 2]; for(let i=3; i

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

    백준 / 누적 합 / 11659번 / 구간 합 구하기 4 / JS

    11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net const fs = require('fs'); const filePath = process.platform === 'linux' ? '/dev/stdin' : '../input.txt'; // const filePath = process.platform === 'linux' ? '/dev/stdin' : 'BOJ/input.txt'; const input = fs.readFileSync(filePath).toString..

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