last_digits_known = dict()
def multiply_digits(x):
mul = 1
x = str(x)
for digit in x:
mul *= int(digit)
return mul
def last_digit(x):
tmp = x
while(x > 9):
x = multiply_digits(x)
if x in last_digits_known:
return last_digits_known[x]
last_digits_known[tmp] = x
return x
t = int(input())
days = input().split()
for i in range(t): days[i] = int(days[i])
for day in range(t):
numbers = [0]*10
for i in range(days[day], 0, -1):
if i not in last_digits_known:
numbers[last_digit(i)] +=1
else:
numbers[last_digits_known[i]] +=1
for i in range(10):
print(numbers[i], end=' ')
print()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | last_digits_known = dict() def multiply_digits(x): mul = 1 x = str(x) for digit in x: mul *= int(digit) return mul def last_digit(x): tmp = x while(x > 9): x = multiply_digits(x) if x in last_digits_known: return last_digits_known[x] last_digits_known[tmp] = x return x t = int(input()) days = input().split() for i in range(t): days[i] = int(days[i]) for day in range(t): numbers = [0]*10 for i in range(days[day], 0, -1): if i not in last_digits_known: numbers[last_digit(i)] +=1 else: numbers[last_digits_known[i]] +=1 for i in range(10): print(numbers[i], end=' ') print() |
English