from bisect import bisect_left

n = int(input())

train = list(map(int, input().split()))

sums = [0 for i in range(len(train))]

for i, t in enumerate(train):
    sums[i] = t
    if i:
        sums[i] += sums[i - 1]
    sums[i] %= 10

indices = {}

for a in range(10):
    indices[a] = list(filter(lambda x: x >= 0, map(
        lambda x: x[0] if a == x[1] else -1, enumerate(sums))))

res = []

for i in range(len(train)):
    val = sums[i - 1] if i else 0

    found = bisect_left(indices[val], i)
    if found >= len(indices[val]):
        found = -1
    else:
        found = indices[val][found]

    if found >= 0:
        res.append(found - i + 1)
    else:
        res.append(-1)

print(' '.join(map(str, res)))
