
const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : 'Wiki\\input.txt';
const inputs = fs.readFileSync(path).toString().trim().split('\n');
const n = Number(inputs[0]);
let cnt = 0;
for (let i = 1; i <= n; i++) {
if (i % 125 === 0) cnt += 1;
if (i % 25 === 0) cnt += 1;
if (i % 5 === 0) cnt += 1;
}
console.log(cnt);
⏰ 소요한 시간 : 5분
5!경우 5*4*3*2*1를 수행해 120이다. 0이 하나 생길 수 있었던 이유는 5의 개수가 하나이기 때문이다. 물론 0을 생성하기 위해서는 5뿐만 아니라 2도 필요하지만 당연히 5의 개수가 더 적기 때문에 5가 몇번 곱해졌는지만 세면 된다.
이때 25의 경우는 5가 2번 곱해졌다.. 이런 경우는 어떻게 세느냐! 25의 배수도 세주면 된다.
n의 범위가 500까지이기 때문에 5의 4제곱인 625까지는 안나누어줘도 된다.