100!末尾零的个数

    技术2022-05-19  22

    直接计算:

    #!/usr/bin/python s = 1 for i in range(1, 101):s *= i count = 0 q = str(s) for i in reversed(q): if (int)(i) == 0: count += 1 else: break print count

    得到结果:

    24

     

    两个数的乘积能在末尾产生0的只有"偶数X5的倍数",1~100之间有50个偶数,但是5的倍数很少,

    其中5,10,15,20这样的数能产生一个0,共20-4=16个这样的数,产生16*1=16个0

    而25,50,75,100这样的数能产生两个0,共4个这样的数,产生4*2=8个0

    所以结尾总共产生16+8=24个零

     

     


    最新回复(0)