Решение задачи Разнообразная команда с Codeforces

Без пояснения   Просмотров: 42


В классе учится n школьников, рейтинг i-го из них на сайте Codehorses равен ai. Требуется выбрать команду из k школьников (1≤k≤n) такую, что рейтинги всех членов этой команды различны.

Если невозможно выбрать требуемую команду, выведите «NO» (без кавычек). Иначе же выведите «YES» и k различных чисел — номера школьников, которые могут составить требуемую команду. Если ответов несколько, то выведите любой из них.

Код

#include <iostream>
#include <map>
using namespace std;
int main() {
	int n, k;
	cin >> n >> k;
	map<int, int>m;
	for (int i = 0; i < n && m.size() < k; ++i) {
		int v;
		cin >> v;
		m[v] = i;
	}
	if (m.size() == k) {
		cout << "YES\n";
		for (auto i : m)
			cout << i.second + 1 << ' ';
	}
	else cout << "NO";
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться