10!
을 예로 보았을 때도 2의 수가 5보다 훨씬 많이 등장하기에 5로 계산하는것이 효율적, 어차피 5의 빈도 수가 낮으므로 쌍의 수로 계산하는 결과와 5의 수는 동일)function trailingZeroes(n: number): number {
let count = 0;
// 0으로 끝나는 것은 10의 배수임을 의미
// 10은 2와 5의 곱
// 트레일링 제로의 개수는 2와 5의 쌍의 개수로 결정되므로, 상대적으로 큰 수이면서 수가 적은 5를 사용
while (n > 0) {
n = Math.floor(n / 5); // 현재 단계에서 5의 개수 계산
count += n; // 총 개수에 추가
}
return count;
}