제출 #682646

#제출 시각아이디문제언어결과실행 시간메모리
682646as111Karte (COCI18_karte)C++14
120 / 120
196 ms5228 KiB
#include <iostream>
#include <vector>
#include <algorithm>

#define MAXN 500000

using namespace std;
int N, K;
vector<int> cards;
vector<int> temp;
int main() {
	cin >> N >> K;
	for (int i = 0; i < N; i++) {
		int c; cin >> c;
		cards.push_back(c);
	}
	sort(cards.begin(), cards.end());
	for (int i = K; i > 0;i--) { // first K greatest cards need to be able to work
		temp.push_back(cards.back());
		cards.pop_back();
	}
	for (auto c : temp) {
		cards.push_back(c);
	}
	int cnt = 0;
	for (int i = N - 1; i >= 0;i--) {
		if (cnt < cards[i]) {
			cnt++;
		}
	}
	if (cnt != K) {
		cout << -1;
	}
	else {
		for (auto c : cards) cout << c << " ";
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...