Submission details
Task:Lista
Sender:actually
Submission time:2025-11-08 22:09:50 +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.01 sdetails

Compiler report

input/code.cpp: In function 'void testCase()':
input/code.cpp:25:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   25 |     for (int i = 0; i < v.size(); i++) {
      |                     ~~^~~~~~~~~~
input/code.cpp:29:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |     for (int i = 0; i < v.size(); i++) {
      |                     ~~^~~~~~~~~~

Code

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

typedef long long ll;
typedef long double ld;

int a[101];
int counts[101];

void testCase() {
    int n, m; cin >> n >> m;
    for (int i = 1; i <= n; i++) counts[i] = 0;
    for (int i = 0; i < m; i++) {
        int num; cin >> num;
        counts[num]++;
    }
    vector<pair<int, int>> v;
    for (int i = 1; i <= n; i++) v.push_back({counts[i], i});
    sort(v.begin(), v.end());
    reverse(v.begin(), v.end());
    int cnt = 0;
    for (int i = 0; i < v.size(); i++) {
        cnt = cnt + (i + 1)*v[i].first;
    }
    cout << cnt << "\n";
    for (int i = 0; i < v.size(); i++) {
        cout << v[i].second << " ";
    }
}

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    testCase();
}

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 ...