1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from collections import Counter
import time

def solution(n, znaczki):
    ilosci = Counter(znaczki)
    wystapienia = Counter(ilosci.values())

    max_znaczkow = [0] * (n + 1)
    for liczba_znaczkow, ile_razy in wystapienia.items():
        for dzielnik in range(1, liczba_znaczkow + 1):
            max_znaczkow[dzielnik] += dzielnik * (liczba_znaczkow//dzielnik) * ile_razy

    return " ".join(map(str, max_znaczkow[1:]))

if __name__ == "__main__":
    n = int(input())
    arr = list(map(int, input().split()))
    print(solution(n, arr))