CF977C Less or Equal

题目描述

给定一个长度为 $n$ 的整数序列和一个整数 $k$。你需要输出一个整数 $x$,满足 $1 \le x \le 10^9$,并且恰好有 $k$ 个序列中的元素小于等于 $x$。 注意,序列中可能包含相等的元素。 如果不存在这样的 $x$,输出 $-1$。

输入格式

输入的第一行包含两个整数 $n$ 和 $k$($1 \le n \le 2 \cdot 10^5$,$0 \le k \le n$)。 第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($1 \le a_i \le 10^9$),表示该序列。

输出格式

输出一个 $[1, 10^9]$ 范围内的整数 $x$,使得恰好有 $k$ 个序列中的元素小于等于 $x$。 如果不存在这样的 $x$,输出 $-1$。

说明/提示

在第一个样例中,$5$ 也是一个合法答案,因为下标为 $[1, 3, 4, 6]$ 的元素小于等于 $5$,显然也小于等于 $6$。 在第二个样例中,无法选择一个数使得恰好有 $2$ 个序列中的元素小于等于该数,因为会有 $3$ 个元素小于等于该数。 由 ChatGPT 4.1 翻译