在Python中将n乘以n后,找到末尾的连续零数
假设我们有一个包含n个数字的数组,那么我们必须在将所有n个数字相乘后返回连续零的个数。
因此,如果输入类似于[200、20、5、30、40、14],则输出将为6,例如200*20*5*30*40*14=336000000,最后有六个0。
为了解决这个问题,我们将遵循以下步骤-
定义一个函数count_fact_two()。这将花费n
计数:=0
当nmod2为0时
数:=数+1
n:=n/2(仅商为整数)
返回计数
定义一个函数count_fact_five()。这将花费n
计数:=0
当nmod5为0时
数:=数+1
n:=n/5(仅商为整数)
返回计数
从主要方法中,执行以下操作-
n:=A的大小
二元:=0,五元:=0
对于0到n范围内的i,执行
二进制:=二进制+count_fact_two(A[i])
五人制:=五人制+count_fact_five(A[i])
如果两点到五点,那么
返回二
除此以外,
回击
示例
让我们看下面的实现以更好地理解-
def count_fact_two( n ):
count = 0
while n % 2 == 0:
count+=1
n = n // 2
return count
def count_fact_five( n ):
count = 0
while n % 5 == 0:
count += 1
n = n // 5
return count
def get_consecutive_zeros(A):
n = len(A)
twos = 0
fives = 0
for i in range(n):
twos += count_fact_two(A[i])
fives += count_fact_five(A[i])
if twos < fives:
return twos
else:
return fives
A = [200, 20, 5, 30, 40, 14]
print(get_consecutive_zeros(A))输入值
[200, 20, 5, 30, 40, 14]
输出结果
6
热门推荐
10 对患者生日祝福语简短
11 结婚祝福语简短装备
12 周岁祝福语学生文案简短
13 订婚领证祝福语简短精辟
14 导师获奖祝福语大全简短
15 新婚购房祝福语简短精辟
16 牛年祝福语简短的爱人
17 送芒果的祝福语简短
18 送给学长毕业祝福语简短