n, *rest = map(int, open(0).read().split()) a = rest[:n] max_j = a[0] if a else 0 diff = [0] * (max_j + 2) # indexes 0 to max_j+1 for x in a: diff[1] += 1 if x + 1 <= max_j: diff[x + 1] -= 1 current = 0 result = [] for j in range(1, max_j + 1): current += diff[j] result.append(str(current)) print(' '.join(result))