如果1*2*3*4*……*n所得的积的末尾有50个连续的0,满足条件的最大自然数n是多少?

问题描述:

如果1*2*3*4*……*n所得的积的末尾有50个连续的0,满足条件的最大自然数n是多少?


第一、首先每一个因素2×5就能满足产生一个0的结果,所以要想末尾有多少个0只要满足有多少个2×5即可。而从1到n的自然数中,因素2总是比因素5多,所以只要5的个数满足0的个数就可以。即需要末尾有3个0就只要有3个5就可以了,需要末尾有7个0只要有7个因素5 就可以,依此类推。
第二、从1到n的数中,
每5个数就会产生一个因素5,即5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100,105,110,
115,120,125,130,135,140,145,150……
也就是n/5就有多少个因素5;
但是在上面的这些数字中,其中25,50,75,100,……,有两个因素5,也就是上面的算法少算了一个因素5,即n/25个因素5;
同样在上面的这些数字中,其中125,250,375,500,……有三个因素5,也就是说上面的算法少算了两个因素5,即n/125.
第三、所以有两种方法计算这道题。
(1)第一个方法:1至n的连续自然数中,含因数5的依次:5,10,15,20,25(含2个),30,35,40,45,50(含2个),55,60,65,70,75(含2个),80,85,90,95,100(含2个),105,110,115,120,125(含3个),130,135,140,145,150(含2个),155,160,165,170,175(含2个),180,185,190,195,200(含2个),205,
所以至205时,就已经可以在末尾产生50个0,如果是问满足条件的最小的自然数是几?那就是205了,但这道题问的是最大是几?则往后推206,207,208,209时,末尾所产生的0都不会变,而至210时就会产生51个0了,所以最大自然数是209。
(2)第二个方法:道理同第一个方法。
根据上面的初步判断n/5≤50,所以n≤250,因此,因素5只会产生在n/5+n/25+n/125=50 这里,而[n/5]+[n/25]+[n/125] ≥50,所以n≥202,其中根据202可以计算出n/25≈8,n/125≈1,因此n/5=50-8-1=41,因此42>n/5≥41,
故210>n≥205,因此n最大是209,因为如果是210就会产生51个0了。

就是求N,1到N含有50个因数
50/6 = 8
因此由50 = 41 + 8 + 1可知,N最小 = 41*5 = 205
在不增加因数5的基础上,N最大 = 209