#7284. 1370D. D. Odd-Even Subsequence

0

1370D. D. Odd-Even Subsequence

1370D. D. Odd-Even Subsequence

CF1370D. Odd-Even Subsequence

时限: 2 秒 | 内存: 256 MB | 输入: 标准输入 | 输出: 标准输出

Ashish 有一个大小为 $n$ 的数组 $a$。

数组 $a$ 的一个子序列被定义为:可以通过删除 $a$ 中的某些元素(可以不删),且不改变剩余元素的顺序得到的序列。

考虑 $a$ 的一个子序列 $s$。他定义 $s$ 的代价为以下两者的较小值:

  • $s$ 中所有奇数位置元素的最大值。
  • $s$ 中所有偶数位置元素的最大值。

注意,这里的位置指的是 $s$ 中的下标,而不是 $a$ 中的下标。位置从 $1$ 开始编号。因此,$s$ 的代价为 $ \min(\max(s_1, s_3, s_5, \ldots), \max(s_2, s_4, s_6, \ldots)) $。

例如,${7, 5, 6}$ 的代价为 $ \min(\max(7, 6), \max(5)) = \min(7, 5) = 5 $。

请你帮助他找到长度为 $k$ 的子序列的最小代价。

输入格式

第一行包含两个整数 $n$ 和 $k$($2 \leq k \leq n \leq 2 \times 10^5$),分别表示数组 $a$ 的长度和子序列的长度。

第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \leq a_i \leq 10^9$),表示数组 $a$ 的元素。

输出格式

输出一个整数,表示长度为 $k$ 的子序列的最小代价。

样例输入 1

4 2
1 2 3 4

样例输出 1

1

样例输入 2

4 3
1 2 3 4

样例输出 2

2

样例输入 3

5 3
5 3 4 2 6

样例输出 3

2

样例输入 4

6 4
5 3 50 2 4 5

样例输出 4

3

提示

在第一个测试样例中,考虑子序列 $s = {1, 3}$,此时代价为 $ \min(\max(1), \max(3)) = 1 $。

在第二个测试样例中,考虑子序列 $s = {1, 2, 4}$,此时代价为 $ \min(\max(1, 4), \max(2)) = 2 $。

在第四个测试样例中,考虑子序列 $s = {3, 50, 2, 4}$,此时代价为 $ \min(\max(3, 2), \max(50, 4)) = 3 $。