#include<bits/stdc++.h> using namespace std; int n, a; map<int, int> ile; vector<int> odp; int main(){ cin >> n; for(int i=0;i<n;i++){ cin >> a; ile[a]++; odp.push_back(0); odp.push_back(0); } for(auto i:ile){ //cout << i.first << endl; for(int j=1;j<=i.second;j++){ odp[j]+=i.second/j*j; } } for(int i=1;i<=n;i++){ cout << odp[i] << " "; } cout << endl; }
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 | #include<bits/stdc++.h> using namespace std; int n, a; map<int, int> ile; vector<int> odp; int main(){ cin >> n; for(int i=0;i<n;i++){ cin >> a; ile[a]++; odp.push_back(0); odp.push_back(0); } for(auto i:ile){ //cout << i.first << endl; for(int j=1;j<=i.second;j++){ odp[j]+=i.second/j*j; } } for(int i=1;i<=n;i++){ cout << odp[i] << " "; } cout << endl; } |