国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Leetcode 172. Factorial Trailing Zeroes

2019-11-11 00:53:29
字體:
來源:轉載
供稿:網友

Given an integer n, return the number of trailing zeroes in n!.

Note: Your solution should be in logarithmic time complexity.

s思路: 1. n!中零的個數是因為有2,5這兩個因子。我們就去找有多少個5,多少個2,然后這兩個數的最小者決定了0的個數。嚴格的說,必須都計算,但是從得到結果的角度思考,由于5比2少,所以只需要知道有多少個5即可。 2. 比如:50!50/5就可以得到5的倍數的個數。第一次做的時候,就以為這就完了。其實沒完,因為這兩者不能直接劃等號,比如:5的倍數是5,10,15,20,25,30,35,40,45,50.注意到,25和50各含有兩個5.也就是說,5的倍數的個數不完全等于5的個數。換句話說,5的倍數的個數不嚴格等于5的個數,但是非常接近。現在的問題,就是如何修正?自己之前想到這里,就不知所措,除了stick這個方法就是quit這個方法,忘了還有一條路,就是繼續使用這個方法往后走,比如:50/5=10,把10/5=2,2/5=0,就是一個iterative的過程。也就是說,這個結果不是一蹴而就就能得到,必須允許分步走。這道題的思路自然就出來! 3. 分步iterative走,經常是把一個方法多次運用,逐漸逼近事物真相!

class Solution {public: int trailingZeroes(int n) { // int res=0; while(n){ n/=5; res+=n; } return res; }};
上一篇:第二章 一切都是對象

下一篇:HashTable

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兰坪| 响水县| 彝良县| 江华| 商都县| 都匀市| 梅州市| 扎赉特旗| 汾西县| 上高县| 阳朔县| 十堰市| 花垣县| 西和县| 科尔| 砚山县| 阳江市| 桐城市| 汾阳市| 砚山县| 梅州市| 博客| 钟祥市| 浮山县| 蒙阴县| 昌黎县| 老河口市| 拉萨市| 奉新县| 隆德县| 平陆县| 尚志市| 五寨县| 常州市| 贵港市| 苍梧县| 区。| 龙岩市| 象州县| 平山县| 碌曲县|