合肥html5网站建设,简洁中文网站模板,如何设计一个网页系统,济南手机网站题目描述#xff1a; 给出一个integer n#xff0c;计算n#xff01;结尾0的个数 题目分析#xff1a; 考虑暴力#xff0c;计算n#xff01;统计最后面0的个数。先不说数字溢出#xff0c;其次n是一个integer #xff0c;O(n)复杂度超时 我们接着考虑#xff0c;产生…题目描述 给出一个integer n计算n结尾0的个数 题目分析 考虑暴力计算n统计最后面0的个数。先不说数字溢出其次n是一个integer O(n)复杂度超时 我们接着考虑产生0的情况 只有包含因子5的数乘以一个偶数会在结尾产生05*2,15*2,75*2因为偶数的个数大于因子包含5的数的个数那么我们只要考虑包含因子5的数 但是是不是包含因子5的数一定只会在结尾产生一个0呢对于25*4提供两个0这是因为25包含两个因子55*5同样125会提供3个0 这样只要考虑1-n之间有多少包含因子5的数有多少个包含因子25的数有道少个包含因子125的数。。。。以此累加 代码: 1 int trailingZeroes(int n) {
2 int mod5;
3 int cnt0;
4 while(n/mod){
5 cntn/mod;
6 mod*5;
7 }
8 return cnt;
9 } 转载于:https://www.cnblogs.com/li-xingtao/p/4215246.html