// 2024 HOPE IN VALUABLE #include<bits/stdc++.h> using namespace std; const int N=300005; int n,m,a[N],ans; map<int,int>mp; int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>n; for(int i=1;i<=n;i++){ int x; cin>>x; mp[x]++; } for(pair<int,int> i:mp) a[++m]=i.second; sort(a+1,a+m+1); for(int i=1,j=1;i<=n;i++){ while(j<=m&&a[j]<i) j++; int ans=0; for(int k=j;k<=m;k++) ans+=a[k]/i; cout<<ans*i<<(i==n?'\n':' '); } return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | // 2024 HOPE IN VALUABLE #include<bits/stdc++.h> using namespace std; const int N=300005; int n,m,a[N],ans; map<int,int>mp; int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>n; for(int i=1;i<=n;i++){ int x; cin>>x; mp[x]++; } for(pair<int,int> i:mp) a[++m]=i.second; sort(a+1,a+m+1); for(int i=1,j=1;i<=n;i++){ while(j<=m&&a[j]<i) j++; int ans=0; for(int k=j;k<=m;k++) ans+=a[k]/i; cout<<ans*i<<(i==n?'\n':' '); } return 0; } |