Problem 1 - Time Limit : 1s Memory Limit : 512M Code Limit : 128KDescription我們定義階乘N!=1×2×3×...×N,並且0!=1。現在我們想知道對於N!的階乘結尾總共有多少個0。Input一行一個整數N。Output0的個 ...
Problem 1 - Time Limit : 1s Memory Limit : 512M Code Limit : 128K
Description
我們定義階乘N!=1×2×3×...×N,並且0!=1。
現在我們想知道對於N!的階乘結尾總共有多少個0。
Input
一行一個整數N。
Output
0的個數。
Sample Input
11
Sample Output
2
Hint
11!=39916800
Data Limit
10% N≤40
30% N≤10^6
60% N≤10^9
100% N≤10^18
Answer
一個2*5就可以得到一個0
但2有很多,所以我們只需要算5有多少個
這裡採用的是輾轉相除
求出5的個數
/*Never stop*/ #include<iostream> using namespace std; int main() { long long n,ans=0; cin>>n; while(n) { ans+=n/5; n/=5; } cout<<ans; return 0; }
這樣就能求出結尾0的個數
初次發表,請多諒解!