Submission details
Task:Lista
Sender:Guuber3
Submission time:2025-11-07 19:33:51 +0200
Language:C++ (C++17)
Status:COMPILE ERROR

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:22:9: error: 'sort' was not declared in this scope; did you mean 'short'?
   22 |         sort(ord.begin(), ord.end());
      |         ^~~~
      |         short
input/code.cpp:23:9: error: 'reverse' was not declared in this scope
   23 |         reverse(ord.begin(), ord.end());
      |         ^~~~~~~
input/code.cpp:26:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   26 |         for (int i = 0; i < ord.size(); i++) res += ord[i].first * (i+1);
      |                         ~~^~~~~~~~~~~~

Code

#include<iostream>
#include<map>
#include<vector>
using namespace std;

int main() {
	int n,m;
	cin >> n >> m;

	map<int,int> counts;
	for (int i = 0; i < m; i++) {
		int x;
		cin >> x;
		counts[x]++;
	}

	vector<pair<int,int> > ord;
	for (int i = 1; i <= n; i++) {
		ord.emplace_back(counts[i], i);
	}

	sort(ord.begin(), ord.end());
	reverse(ord.begin(), ord.end());

	int res = 0;
	for (int i = 0; i < ord.size(); i++) res += ord[i].first * (i+1);
	
	cout << res << "\n";
	for (auto [a, b] : ord) cout << b << " ";
	cout << "\n";
}