Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 블레이버스
- 내밥줄지켜
- #유데미 #udemy #웅진씽크빅 #스나이퍼팩토리 #인사이드아웃 #미래내일일경험 #프로젝트캠프 #부트캠프 #react #next.js #프론트엔드개발자양성과정 #개발자교육과정
- 2026
- 프로그래머스
- 코딩
- 백엔드
- js
- 타입스크립트
- pccp
- 새복많
- Web
- 밥줄지키기프로젝트
- 회사
- AI에게서 살아남기
- 30대까지이루기
- 신입
- 코딩테스트
- 파킨슨병
- react
- frontend
- 개발
- 웹개발
- 밀러컬럼
- 자바스크립트
- 개발자
- 프론트엔드
- 프로그래밍
- Next
- javascript
Archives
- Today
- Total
낭 만 당
프로그래머스 Lv 2 - 기능개발 (JavaScript) 본문
코딩테스트 pccp를 신청했다..!!

https://school.programmers.co.kr/learn/courses/30/lessons/42586
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
자료구조 관련된 문제를 공부해야 할 것 같다고 계속 느끼는 중이라...
스택/큐 카테고리, 정답률 66%의 문제에 도전합니다...
| 스택/큐 | Lv. 2 | 73,009명 | 66% |
문제 해결 로직
- '완료까지 남은 날짜' 계산하기: 각 기능이 100%가 되려면 며칠이 걸리는지 계산해서 새로운 배열에 저장합니다.
- 남은 진도 = 100 - 현재 진도
- 걸리는 날짜 = 남은 진도 / 개발 속도 (나누어 떨어지지 않으면 올림 처리)
- 배포 그룹 묶기: '남은 날짜' 배열을 순회하며 배포 단위를 결정합니다.
- 첫 번째 기능이 배포될 때까지 걸리는 날짜를 '기준일'로 설정합니다.
- 뒤이은 기능들의 '남은 날짜'가 '기준일'보다 작거나 같으면, 같은 날 배포될 수 있으므로 하나의 그룹으로 묶습니다.
- 만약 '기준일'보다 오래 걸리는 기능이 나타나면, 거기서 그룹을 끊고 그 기능의 '남은 날짜'를 새로운 '기준일'로 설정합니다.
- 결과 반환: 각 그룹에 속한 기능의 개수를 answer 배열에 담아 반환합니다.
function solution(progresses, speeds) {
const answer = [];
const daysLeft = progresses.map((progress, index) => {
const speed = speeds[index];
const remaining = 100 - progress;
return Math.ceil(remaining / speed);
//이 문제에서는 "하루의 끝에 배포"한다는 조건 때문에,
//1.1일이 걸려도 2일, 7.0일이 걸려도 7일로 계산해야 해서 Math.ceil()이 꼭 필요
});
let deployCount = 0;
let maxDay = daysLeft[0];
for (let i = 0; i < daysLeft.length; i++) {
if (daysLeft[i] > maxDay) {
answer.push(deployCount);
maxDay = daysLeft[i];
deployCount = 1;
} else {
deployCount++;
}
}
answer.push(deployCount);
return answer;
}
'Programming Record' 카테고리의 다른 글
| [2025 블레이버스 MVP 개발 해커톤: 시즌2] 최우수상 후기 (1) | 2025.09.02 |
|---|---|
| 파킨슨병 환자를 위한 맞춤형 운동 관리 앱 설계 및 구현 - 2025 한국디지털학회 발표 및 수상 후기 (1) | 2025.08.25 |
| [파킨슨밸런스] 서울대병원 파킨슨병 환자를 위한 운동 추적 어플 개발 (5) | 2025.08.09 |
| Nest.js로 가는 길에 Express.js 먼저 맛보기 (3) | 2025.07.19 |
| 프로그래머스 Lv1 수박수박수~ 문제 풀기와 코드의 변화 (1) | 2025.07.16 |