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 |
Tags
- 백준 node.js
- 모던 자바스크립트 딥다이브
- react customHook 예시
- Vue3
- frontend roadmap study
- useEffect return
- 모던 자바스크립트 Deep Dive
- 머쓱이
- Vue3 Router
- 모던 자바스크립트 Deep Dive TIL
- K_Digital Training
- 투포인터알고리즘 js
- 리팩토링 회고
- 프로그래머스 데브코스 프론트엔드
- react 프로젝트 리팩토링
- 프로그래머스 K_Digital Training 프론트엔드
- 개발자 특강
- 프로그래머스 데브코스 프론트엔드 TIL
- 프로그래머스 K_Digital Training
- 인프런 자바스크립트 알고리즘 문제풀이
- TypeScript 문법 소개
- useRef 지역 변수
- KDT 프로그래머스
- Frontend Roadmap
- 모던 자바스크립트 TIL
- 우테캠 회고록
- 백준 js
- KDT 프로그래머스 데브코스 프론트엔드
- 프로그래머스 데브코스
- 모던 javascript Deep Dive
Archives
- Today
- Total
프론트엔드 개발자의 기록 공간
[백준 node.js] 4796번_캠핑 본문
백준 그리디 알고리즘 4796번_캠핑
난이도 : 실버V
문제 설명
입출력
문제 풀이 : 문제를 쉽게 해석하면 P영업일 동안 L일만 사용할 수 있다. 즉 P가 8, L이 5라고하면 1~8일중 5일만 사용할 수 있고 그다음 9~16일중 5일 사용할 수 있다는 의미이다 즉 영업 쿨타임(?)이 8일이라는 소리이다.
그래서 알고리즘을 휴가일수가 영업일보다 클때까지 휴가일수 - 영업일을 빼면서 사용일수를 카운트 해주면된다.
휴가일수가 영업일 보다 작을때는 휴가일수와 사용일수를 비교하여 더 작은값을 넣어줘야한다.
//실버 5 캠핑
function solution(list) {
let L = 0; //L일 동안
let P = 0; //P일 중
let V = 0; //휴가 일수
let cnt = 0; //이용 일 수
for(let i=0; i<list.length; i++){
cnt = 0;
L = list[i][0];
P = list[i][1];
V = list[i][2];
//휴가 일 수가 캠핑 영업보다 클때까지 반복
while(V > P){
V -= P; // 캠핑을 한번 이용할때 P일 차감
cnt += L; //이용 일 수 카운트
}
//캠핑 영업일 보다 휴가 일 수가 적지만 남은 휴가가 있다.
//이용 가능한 일 수가 휴가일 수 보다 클때 사용기간은 휴가일 수 만큼만 사용가능하다.
if(L > V){
cnt += V;
}
//휴가일수가 클때는 이용가능한 일 수만큼만 사용가능하다.
else{
cnt += L;
}
console.log("Case "+(i+1) +": "+cnt);
}
}
const readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
let input = [];
let list = [];
rl.on("line", function (line) {
//여러줄 입력
input.push(line);
}).on("close", function () {
//이중 배열로 만들기
for(i of input){
list.push(i.split(" ").map((el) => parseInt(el)));
}
//마지막 입력값 000 없애기
list = list.slice(0,-1);
solution(list);
process.exit();
});
728x90
'알고리즘_JS > 백준_Greedy' 카테고리의 다른 글
[백준 node.js] 1783번_병든 나이트 (0) | 2020.12.29 |
---|---|
[백준 node.js] 2437번_저울 (0) | 2020.12.28 |
[백준 node.js] 1744번_수 묶기 (0) | 2020.12.26 |
[백준 node.js] 1138번_한 줄로 서기 (0) | 2020.12.26 |
[백준 node.js] 1080번_행렬 (0) | 2020.12.26 |
Comments