티스토리 뷰
https://www.acmicpc.net/problem/3474
N!의 오른쪽 끝에 있는 0의 개수를 구하는 문제이다. 0이 만들어지려면 10이 필요하고 이는 소인수 중에서 2와 5의 개수를 세주면 된다. 5가 더 적게 나타나므로 5의 개수만 세주면 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | #include <cstdio> int t,n,ans; int main() { scanf("%d",&t); while(t--) { scanf("%d",&n); for(int i=5;i<=n;i*=5) ans+=n/i; printf("%d\n",ans); ans=0; } return 0; } | cs |
'Algorithm > BOJ' 카테고리의 다른 글
2458 키 순서 (0) | 2018.09.12 |
---|---|
15683 감시 (0) | 2018.09.11 |
3176 도로 네트워크 (0) | 2018.09.05 |
11438 LCA 2 (0) | 2018.09.05 |
1991 트리 순회 (0) | 2018.09.05 |