给定一个长度为 的整数数组 与一个整数下限 。在所有长度 的连续子数组中,分别取其中位数(偶数长度取较小的中间值,即“下中位数”),请你输出这些中位数的最大值。 名词解释: 本题中的“中位数”采用“下中位数”定义:对长度为 的序列,按非降序排序后,取第 个元素作为中位数(当 为偶数时,为两中间元素中较小的一个;当 为奇数时,即中间元素)。 例如: 排序为 ,中位数为第 个元素 ; 排序为 ,中位数为第 个元素 。
输入描述:
每个测试文件均包含多组测试数据。第一行输入一个整数 代表数据组数,每组测试数据描述如下:对于每组数据: 第一行输入两个整数 。 第二行输入 个整数 。 保证所有测试中 的总和不超过 。


输出描述:
输出 行,每行一个整数,表示对应数据中“所有长度 的子数组”之中位数的最大值。
示例1

输入

3
5 3
2 1 5 4 3
4 2
1 1 1 1
6 5
10 2 8 6 4 9

输出

4
1
6

说明

\hspace{15pt}样例一:所有长度 \ge 3 的子数组中位数依次为 
\hspace{30pt}长度 3[2,1,5]\to 2,\ [1,5,4]\to 4,\ [5,4,3]\to 4
\hspace{30pt}长度 4[2,1,5,4]\to 2,\ [1,5,4,3]\to 3
\hspace{30pt}长度 5[2,1,5,4,3]\to 3
\hspace{15pt}最大值为 4

\hspace{15pt}样例二:任意长度 \ge 2 的子数组中位数均为 1,最大值 1

\hspace{15pt}样例三:考虑长度 5 的两个窗口与长度 6 的整段,三者的(下)中位数均为 6,最大值为 6
加载中...