본문 바로가기

자료구조 & 알고리즘28

프로그래머스 구명보트 - 자바스크립트 풀이 ⛵︎ 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr조건구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고사람의 몸무게는 40kg 이상 240kg 이하구명보트의 무게 제한은 40kg 이상 240kg 이하구명보트의 무게 제한은 항상 사람들의 몸무게 중 최댓값보다 크게 주어짐자바스크립트 풀이people.sort((a,b) => a-b); // [70, 50, 80, 50] -> [50, 50, 70, 80]우선 people을 오름차순으로 정렬한다. let answer = 0, left = 0, right = people.length -1;// people[left] = 50 , people[right] = .. 2024. 12. 11.
프로그래머스 귤 고르기 - 자바스크립트 풀이 🍊 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krk: 🍊 귤의 개수 (1 ≤ k ≤ tangerine의 길이 ≤ 100,000)tangerine: 귤의 크기를 담은 배열 (1 ≤ tangerine의 원소 ≤ 10,000,000)핵심: 귤 k개를 고를 때 크기가 서로 다른 종류의 수의 최솟값을 return자바스크립트 풀이전체 코드function solution(k, tangerine) { let result = 0; let count = {}; tangerine.forEach(x => { count[x] = (count[x] || 0) + 1; }); const fr.. 2024. 12. 11.
프로그래머스 카펫 - 자바스크립트 풀이 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr완전탐색을 활용하는 문제임을 알고 완전탐색을 어떻게 사용하지 생각하다가 시간을 다 까먹어버렸다 ㅠㅡㅠ풀이노란 카펫의 수 = (가로 - 2) * (세로 - 2) 임을 활용해야 한다.function solution(brown, yellow) { let answer = []; for(let i = 3; i= i && (brown + yellow) % i === 0) answer = [width, i]; } return answer;}for문을 돌면서 순차적으로 세로를 가정한다. 가운데 노란 카펫이 위치하는 것을 생각해보면 세로는 3보다는 클.. 2024. 12. 10.
프로그래머스 다음 큰 숫자 - 자바스크립트 풀이 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 👀 toString numObj.toString([radix]);// exlet num = 7;console.log(num.toString(2)); // -> 111radix: 진수를 나타낸다. (2~36 범위에 해당하지 않는 수를 입력 시 RangeErro가 발생한다.)반환값: Number 객체를 나타내는 문자열function solution(n) { const counts = n.toString(2).replaceAll("0","").length; let num = n + 1; while(true){ .. 2024. 12. 8.