https://www.acmicpc.net/problem/5585
5585번: 거스름돈
타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사
www.acmicpc.net
- 사용언어 : node.js
- 알고리즘 : 그리디 알고리즘
- Solved.ac Tier : Bronze II
node.js 코드
1. 문제 정리
알고리즘을 다시 시작하며, 그리디 알고리즘부터 천천히 풀어나가보기로 했다. 그리디의 기본인 거스름 돈 문제부터 보자.
JOI잡화점엔 잔돈으로 500원,100원,10원,5원,1원이 있다고 한다. 언제나 거스름돈을 적게 주는 알고리즘을 짜라는 문제이다.
하나하나 비교해가주며 while문을 돌려주었다.
2. 완성 코드
const fs = require('fs');
let inputs = fs.readFileSync("/dev/stdin").toString();
let answer = 0, input = 1000 - inputs;
while(input >= 500){
input -= 500;
answer++;
}
while(input >= 100){
input -= 100;
answer++;
}
while(input >= 50){
input -= 50;
answer++;
}
while(input >= 10){
input -= 10;
answer++;
}
while(input >= 5){
input -= 5;
answer++;
}
while(input >= 1){
input -= 1;
answer++;
}
console.log(answer);
'백준 알고리즘 > Lang-node.js' 카테고리의 다른 글
[백준/node.js] 10610번 30 (0) | 2022.03.19 |
---|---|
[백준/node.js] 1789번 수 들의 합 (0) | 2022.03.18 |
[백준/node.js] 24262번 알고리즘 수업 - 알고리즘의 수행 시간 1 (0) | 2022.01.25 |
[백준/node.js] 23803번 골뱅이찍기 - ㄴ (1) | 2022.01.20 |
[백준/node.js] 23802번 골뱅이 찍기 - 뒤집힌 ㄱ (0) | 2022.01.19 |