Re: [閒聊] 每日leetcode

作者: JIWP (JIWP)   2024-03-16 19:31:45
我獨自leetcode
172. Factorial Trailing Zeros
給一個整數n,請回傳n!的trailing zeros的數目
思路 :
這題就純粹的數學題目
你要求一個整數後面有幾個0,就是去把它進行質因數分解
去看有幾個5*2就有幾個0
而這題的整數是n!,質因數分解後2的數目一定會比5多
所以你去求有幾個5就好
問題變成n!質因數分解後有幾個5?
稍微想一下就可以知道
只要是5的倍數就有1個5、25的倍數有2個5,以此類推5^x會有x個5
n/5->有幾個5的倍數、n/25->有幾個25的倍數.....
就這樣一直到n=0,就可以求出答案了
C Code
int trailingZeroes(int n) {
int ans=0;
while(n!=0){
ans+=n/5;
n/=5;
}
return ans;
}
作者: PogChampLUL (火車站肥宅)   2024-03-16 19:32:00
狼媽最強
作者: RinNoKareshi (立石凜的男友)   2024-03-16 19:32:00
大師
作者: wwndbk (黑人問號)   2024-03-16 19:35:00
大師
作者: DJYOSHITAKA (Evans)   2024-03-16 19:35:00
大濕

Links booklink

Contact Us: admin [ a t ] ucptt.com