Решение задачи Меньшие или равные с Codeforces

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


Вам задана последовательность длины n целых чисел и целое число k. Ваша задача состоит в том, чтобы вывести любое целое число x из отрезка [1;109] (то есть 1≤x≤109) такое, что ровно k элементов заданной последовательности меньше либо равны x.

Заметьте, что последовательность может содержать равные элементы.

Если искомого x не существует, выведите «-1» (без кавычек).

Код

#include <bits/stdc++.h>
using namespace std;

int main() {
	int n,k;
	cin >> n >> k;
	int a[n + 1];
	a[0] = 1;
	for(int i = 1; i <= n; ++i) 
        cin >> a[i];
	sort(a, a + n + 1);
	cout<<((a[k] != a[k+1]) ? a[k]:-1);
}

         

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



Комментарии

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