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
32
import sys
from collections import defaultdict
from typing import List


def read_n():
    return int(sys.stdin.readline().strip())

def read_n_stamps():
    return list(map(int, sys.stdin.readline().split()))

def solve(stamps: List[int], n: int = 0):
    counts = defaultdict(int)
    for stamp_type in stamps:
        counts[stamp_type] += 1

    ans = f"{n} "
    for k in range(2, n + 1):
        max_stamps = 0
        for stamp_type in counts:
            new_stamps = (counts[stamp_type] // k) * k
            max_stamps += new_stamps
        ans += f"{max_stamps}"
        if k != n:
            ans += " "

    return ans

n = read_n()
stamps = read_n_stamps()
y = solve(stamps, n)
print(y)