Submission details
Task:Lista
Sender:Kuha
Submission time:2025-11-08 15:11:42 +0200
Language:C++ (C++17)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED100
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails

Code

#include <bits/stdc++.h>
 
#define ll long long

using namespace std;
 
int main () {
    int n, m;
    cin>>n>>m;
    ll cnt[n + 1];
    for (int i = 0; i <= n; i++) {
        cnt[i] = 0;
    }
    for (int i = 0; i < m; i++) {
        int x;
        cin>>x;
        cnt[x]++;
    }
    cnt[0] = m + 1;
    vector<pair<ll, int>> v;
    for (int i = 1; i <= n; i++) {
        v.push_back({cnt[i], i});
    }
    sort(cnt, cnt + (n + 1));
    reverse(cnt, cnt + (n + 1));
    sort(v.begin(), v.end());
    reverse(v.begin(), v.end());
    ll ans = 0;
    for (ll i = 0; i <= n; i++) {
        ans += i * cnt[i];
    }
    cout<<ans<<endl;
    for (int i = 0; i < n; i++) {
        cout<<v[i].second<<" ";
    }
    cout<<endl;
}

Test details

Test 1

Verdict: ACCEPTED

input
1 1
1

correct output
1

user output
1

Test 2

Verdict: ACCEPTED

input
100 1000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

correct output
1000
1 100 99 98 97 96 95 94 93 92 ...

user output
1000
1 100 99 98 97 96 95 94 93 92 ...

Test 3

Verdict: ACCEPTED

input
100 1000
1 2 2 2 1 1 1 1 1 1 1 1 1 2 1 ...

correct output
1488
1 2 100 99 98 97 96 95 94 93 9...

user output
1488
1 2 100 99 98 97 96 95 94 93 9...

Test 4

Verdict: ACCEPTED

input
100 1000
7 8 2 4 8 3 3 10 9 7 7 6 8 7 2...

correct output
5109
3 8 7 5 1 6 2 4 9 10 100 99 98...

user output
5109
3 8 7 5 1 6 2 4 9 10 100 99 98...

Test 5

Verdict: ACCEPTED

input
100 1000
23 85 3 99 63 79 38 37 67 28 7...

correct output
41714
57 38 63 62 93 85 95 81 79 61 ...

user output
41714
57 38 63 62 93 85 95 81 79 61 ...