// // Created by BigBag on 13.03.2024 10:54:00 // #include <bits/stdc++.h> using namespace std; #ifdef BigBag #define DEBUG for (bool ____DEBUG = true; ____DEBUG; ____DEBUG = false) #define LOG(...) print(#__VA_ARGS__" ::", __VA_ARGS__) << endl template<class ...Ts> auto &print(Ts ...ts) { return ((cerr << ts << " "), ...); } #else #define DEBUG while (false) #define LOG(...) #endif const int max_n = 300333, inf = 1000111222; int n, a[max_n], ans[max_n]; map<int, int> cnt; int main() { // freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; for (int i = 0; i < n; ++i) { cin >> a[i]; ++cnt[a[i]]; } for (auto [x, c] : cnt) { for (int i = 1; i <= c; ++i) { ans[i] += c / i * i; } } for (int i = 1; i <= n; ++i) { cout << ans[i] << " "; } cout << "\n"; return 0; }
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 36 37 38 39 40 41 42 43 44 45 46 47 | // // Created by BigBag on 13.03.2024 10:54:00 // #include <bits/stdc++.h> using namespace std; #ifdef BigBag #define DEBUG for (bool ____DEBUG = true; ____DEBUG; ____DEBUG = false) #define LOG(...) print(#__VA_ARGS__" ::", __VA_ARGS__) << endl template<class ...Ts> auto &print(Ts ...ts) { return ((cerr << ts << " "), ...); } #else #define DEBUG while (false) #define LOG(...) #endif const int max_n = 300333, inf = 1000111222; int n, a[max_n], ans[max_n]; map<int, int> cnt; int main() { // freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); ios_base::sync_with_stdio(0); cin.tie(0); cin >> n; for (int i = 0; i < n; ++i) { cin >> a[i]; ++cnt[a[i]]; } for (auto [x, c] : cnt) { for (int i = 1; i <= c; ++i) { ans[i] += c / i * i; } } for (int i = 1; i <= n; ++i) { cout << ans[i] << " "; } cout << "\n"; return 0; } |