請聽題
======================================================================================================
時間限制:1秒
空間限制:32768K
輸入一個正整數n 求n!的結尾有多少個0?
比如n=10; n!=3628800,所以答案爲2
輸入描述:
輸入n(1<=n<=1000),如:10
輸出描述:
輸出一個整數,及0的個數,如:2
======================================================================================================
在頭條裏看到說是滴滴的面試題,總共兩個,第一個題目太長,懶得看,所以寫了第二個,一羣評論的二貨寫的答案是 n/5,可是驗證過了,肯定不對。
可是我不知道這個答案用數學公式該怎麼來寫,直接上代碼。
/**
* 第二題的解法
*
* @author LvGuoFei
* @version 創建時間:2016-9-18 下午11:37:54
* @version <h3>This class of code that there will be no mistake, amen</h3>
*/
public class Reply {
/**
* 統計階乘數據中出現零的個數
*
* @param i
* @return
* @author LvGuoFei
*/
private static int zeroNum(int i) {
int zn = i / 5;
int aa = cs(zn);
aaj = 0;
zn = zn + aa;
return zn;
}
private static int aaj = 0;
private static int cs(int i) {
int j = i / 5;
if (j >= 5) {
aaj += j;
cs(j);
} else {
aaj += j;
}
return aaj;
}
public static void main(String[] args) {
System.out.println(zeroNum(1259));
}
}
還是沒想起來怎麼寫公式,誰知道了求告知。