记录一下python解法
先放上找到的大佬说的解析:(链接见文末)
下面是python的代码
# 只适用于特定的数字范围
def N_jie(n):
i = 1
cont = 0
while i <= n:
if i % 5 == 0:
cont += 1
if i % (5 * 5) == 0:
cont += 1
if i % (5 * 5 * 5) == 0:
cont += 1
if i % (5 * 5 * 5 * 5) == 0:
cont += 1
if i % (5 * 5 * 5 * 5 * 5) == 0:
cont += 1
if i % (5 * 5 * 5 * 5 * 5 * 5) == 0:
cont += 1
if i % (5 * 5 * 5 * 5 * 5 * 5 * 5) == 0:
cont += 1
i += 1
return cont
# 对上面的代码进行了优化,适用范围更广
def N_jie1(n):
i = 1
cont = 0
while i <= n:
j = 1
while i >= (5 ** j):
if i % (5 ** j) == 0:
cont += 1
j += 1
i += 1
return cont
# 三个中最省资源的解
def N_jie2(n):
cont = 0
while n // 5 != 0:
cont += n // 5
n = n // 5
return cont
m = 100000
print(N_jie(m))
print(N_jie1(m))
print(N_jie2(m))