Submission #308661

#TimeUsernameProblemLanguageResultExecution timeMemory
308661shrek12357Karte (COCI18_karte)C++14
120 / 120
377 ms7080 KiB
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <map>
#include <set>
#include <climits>
#include <cmath>
#include <fstream>
#include <queue>
#include <stack>
using namespace std;
#define ll long long
//cin.tie(0);
//ios_base::sync_with_stdio(0);

bool comp(int a, int b) {
	return  a > b;
}

int main() {
	int n, k;
	cin >> n >> k;
	vector<int> nums;
	//int counter = 0;
	for (int i = 0; i < n; i++) {
		int temp;
		cin >> temp;
		//if (temp == 0) {
		//	counter++;
		//	continue;
		//}
		nums.push_back(temp);
	}
	sort(nums.begin(), nums.end());
	vector<int> temp = nums;
	sort(temp.begin(), temp.end(), comp);
	if (nums.size() < k) {
		cout << -1 << endl;
		return 0;
	}
	for (int i = n - k; i < n; i++) {
		if (nums[i] <= i - (n - k)) {
			cout << -1 << endl;
			return 0;
		}
	}
	for (int i = 0; i < n - k; i++) {
		if (nums[i] > k) {
			cout << -1 << endl;
			return 0;
		}
	}
//	for (int i = 0; i < counter; i++) {
	//	cout << 0 << " ";
//	}
	for (int i = n - k - 1; i >= 0; i--) {
		cout << nums[i] << " ";
	}
	for (int i = n - 1; i >= n - k; i--) {
		cout << nums[i] << " ";
	}
	cout << endl;
}

Compilation message (stderr)

karte.cpp: In function 'int main()':
karte.cpp:38:18: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   38 |  if (nums.size() < k) {
      |      ~~~~~~~~~~~~^~~
#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...