《Cracking the Coding Interview》——第17章:普通题——题目3
2014-04-28 22:22
393 查看
2014-04-28 22:18
题目:计算N的阶乘尾巴上有多少个零?
解法:计算5的个数即可,因为2 * 5 = 10,2的个数肯定比5多。计算5的个数可以在对数时间内搞定。
代码:
题目:计算N的阶乘尾巴上有多少个零?
解法:计算5的个数即可,因为2 * 5 = 10,2的个数肯定比5多。计算5的个数可以在对数时间内搞定。
代码:
// 17.3 Count how many zeros are there in n!? // Count the number of 5s in n!. #include <cstdio> using namespace std; int countZero(int n) { int res = 0; while (n > 0) { res += n / 5; n /= 5; } return res; } int main() { int n; while (scanf("%d", &n) == 1) { printf("%d\n", countZero(n)); } return 0; }
相关文章推荐
- 《Cracking the Coding Interview》——第17章:普通题——题目8
- 《Cracking the Coding Interview》——第17章:普通题——题目1
- 《Cracking the Coding Interview》——第17章:普通题——题目9
- 《Cracking the Coding Interview》——第17章:普通题——题目2
- 《Cracking the Coding Interview》——第17章:普通题——题目10
- 《Cracking the Coding Interview》——第17章:普通题——题目11
- 《Cracking the Coding Interview》——第17章:普通题——题目12
- 《Cracking the Coding Interview》——第17章:普通题——题目4
- 《Cracking the Coding Interview》——第17章:普通题——题目13
- 《Cracking the Coding Interview》——第17章:普通题——题目5
- 《Cracking the Coding Interview》——第17章:普通题——题目14
- 《Cracking the Coding Interview》——第17章:普通题——题目6
- 《Cracking the Coding Interview》——第17章:普通题——题目7
- 《Cracking the Coding Interview》——第8章:面向对象设计——题目6
- 《Cracking the Coding Interview》——第14章:Java——题目5
- 《Cracking the Coding Interview》——第16章:线程与锁——题目1
- 《Cracking the Coding Interview》——第18章:难题——题目4
- 《Cracking the Coding Interview》——第1章:数组和字符串——题目2
- 《Cracking the Coding Interview》——第3章:栈和队列——题目1
- 《Cracking the Coding Interview》——第5章:位操作——题目2