안녕하세요
[node.js] 2839 설탕배달 (자바스크립트) 기본수학단계1 본문
2839 설탕 배달
3 ≤ N ≤ 5000 에 대하여 N을 최대한의 5의 배수와 최소한의 3의 배수를 합한 조합으로 나머지가 생기지 않도록 나눕니다.
5와 3각각의 배수끼리 더합니다. 나누어 떨어지지 않는다면 -1을 출력합니다.
18은 5x3 과 3x1로 이루어져 있습니다. 결과는 4입니다.
18
결과
4
제출한 답
let n = Number(require("fs").readFileSync("dev/stdin").toString());
let kg3 = 0;
while (n >= -2) {
if (n % 5 == 0) {
console.log(n / 5 + kg3);
break;
} else if (n < 0) {
console.log(-1);
}
kg3++;
n -= 3;
}
코드설명
- 1) 최대한의 5kg 봉지와 최소한의 3kg 봉지를 조합하여 나누어 떨어지도록 해야합니다.
- 2) 나누어 떨어지지 않는다면 3kg 만큼 덜어냅니다.
kg3++;
n -= 3; - 3) 5kg 봉지로 나누어떨어질 때까지 3kg 만큼 덜어내는 작업을 반복합니다.
while (n >= -2) {
if (n % 5 == 0) {
console.log(n / 5 + kg3);
break; - 4) 모두 덜어내었음에도 나누어떨어지지 않는다면 -1을 출력합니다.
} else if (n < 0) {
console.log(-1);
}
'백준 자바스크립트' 카테고리의 다른 글
[node.js] 1978 소수 찾기 (자바스크립트) 기본수학단계2 (0) | 2022.06.06 |
---|---|
[node.js] 10757 큰 수 A + B (자바스크립트) 기본수학단계1 (0) | 2022.06.05 |
[node.js] 1110 더하기 사이클 (자바스크립트) 문자열 단계 (0) | 2022.05.31 |
[node.js] 2775 부녀회장이 될테야 (자바스크립트) 2차원 배열 기본 수학 단계 (0) | 2022.05.24 |
[node.js] 기본 수학 단계 (자바스크립트) 1712 ~ (0) | 2022.05.12 |