码迷,mamicode.com
首页 > 其他好文 > 详细

第2章 数字之魅——数字中的技巧

时间:2015-03-18 20:02:38      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:

2.2关于阶乘的一点知识

问题1:求 N!末尾有多少个0。

问题2:N!中二进制表示中最低位1的位置。

首先对于问题1:

    对于N!的末尾有多少个0这个问题。要追溯到算术基本定理:

算术基本定理

任何一个大于1的自然数N,都可以唯一分解成有限个质数的乘积 N=(P_1^a1)*(P_2^a2)......(P_n^an) , 这里P_1<P_2<...<P_n是质数,其诸方幂 ai 是正整数。
 
以上是百度百科对于该定理的描述。由此我们可以把一个数看做是由有限个素数因子构成的。那么N!也不例外。设N!=M。
M = S*10^n = S*(2*5)*(2*5)*(2*5)...2*5有n队。S尾部是不含0的。所以原问题就转化为寻找N!中有多少对2和5的因子了。
也就是说寻找2和5的个数中哪个最少。取最少的那个(原先描述最少用最小,果断容易引起误解。)。对于这个问题。还有一步可以通过思维化简问题的就是2和5的因子到底哪个更少呢?明显是5的。所以我们要寻找数中5的因子的个数。
 
法1:从数的角度
法2:从组合数的角度(结构)

第2章 数字之魅——数字中的技巧

标签:

原文地址:http://www.cnblogs.com/Milkor/p/4348319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!