Computer science/알고리즘
[백준, node.js] 2004번 "조합 0의 개수" 문제 해결방법
남양주개발자
2022. 2. 13. 15:28
728x90
반응형
문제
예제 입력 & 출력
입력
출력
소스코드
조합 nCm의 끝자리 0의 개수를 출력하는 문제 2의 승수(a1 - b1, c1) 와 5의 승수(a2 - b2 - c2) 가 구해졌으면 겹치는(짝지을 수 있는) 개수를 구하면 되므로, 2와 5의 승수 중 최솟값을 출력
const fs = require('fs');
let [n, m] = fs.readFileSync('./dev/stdin').toString().split(' ');
n = Number(n)
m = Number(m)
function getPowerN(num, power) {
let count = 0;
while(num >= power) {
count += parseInt(num / power);
num /= power;
}
return count;
}
const two = getPowerN(n, 2) - getPowerN(n - m, 2) - getPowerN(m, 2);
const five = getPowerN(n, 5) - getPowerN(n - m, 5) - getPowerN(m, 5);
console.log(Math.min(two, five));
기본적인 개념을 알고 있으면 쉽게 풀 수 있으나 그렇지 않을 경우 접근하기 어려운 문제
728x90
반응형
그리드형