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
33
34
35
#include<iostream>
#include<map>
using namespace std;
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    map<int, int> m;
    int n;
    int p;
    cin>>n;
    int w[n+1];
    for(int i=1; i<=n; i++)
    {
        cin>>p;
        m[p]+=1;
        w[i]=0;
    }
    map<int, int>::iterator it = m.begin();
    for(int k=1; k<=n; k++)
    {
    while (it != m.end()) 
    {
        w[k]+=((it->second)/k);
        ++it;
    }
    it = m.begin();
    }
    for(int j=1; j<=n; j++)
    {
        w[j]=w[j]*j;
        cout<<w[j]<<" ";
    }
}