js

    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; } /** * 올바른 괄호 문자열인지 판단해서 결..

    Programmers / Level 2 / [1차] 캐시 / JS

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(cacheSize, cities) { let cache = []; const [HIT, MISS] = [1, 5]; let answer = 0; cities = cities.map(el => el.toLowerCase()); for(const CITY of cities) { // 캐시에 이미 있다면 if(cache.includes(CITY)) { answer += HIT; cache.splice(cache.indexOf(CITY), 1); } // 캐시에 ..

    Programmers / Level 2 / 멀리 뛰기 / JS

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