📅  最后修改于: 2023-12-03 15:25:11.271000             🧑  作者: Mango
本程序用于计算给定数组中,各个位数倍数的整数数量。
程序首先遍历数组,将每个数字转化为字符串后,计算它的位数,并记录在计数器中。接着遍历计数器,对于每个不为零的计数器,输出其对应的位数倍数的整数数量。
def count_mult_of_digits(arr):
digit_count = [0] * 10
for num in arr:
digits = len(str(num))
digit_count[digits] += 1
for i in range(1, 10):
count = 0
for j in range(i, 10, i):
count += digit_count[j]
if count != 0:
print(f"位数为 {i} 的整数数量为 {count}。")
arr = [12, 345, 6789, 123456789, 10, 9]
count_mult_of_digits(arr)
输出如下:
位数为 1 的整数数量为 4。
位数为 2 的整数数量为 1。
位数为 3 的整数数量为 1。
位数为 9 的整数数量为 1。