学到一个新公式;
个数Z = [N/k的1次方] + [N/k的2次方] + [N/k的3次方] +......
ex:
25!中能被5整除的个数,[25/5] + [25/25] = 6个,分别是5,10,15,20,25(两个)
1.给定整数N,求N!中尾部0的个数
(1)直接的想法,算出N!肯定不现实。那么要求0得个数其实就是求5的倍数的个数(注意5的K次方算K个)
(2)上面的公式可算出
2.求N!中二进制最低位1的位置
最低位为1,因为只要乘以2那么,二进制就会向左移动一位。所以相当于上面的K = 2,求得