luogu#P10059. Choose

    ID: 14020 远端评测题 1000ms 128MiB 尝试: 6 已通过: 2 难度: 4 上传者: 标签>贪心二分单调队列洛谷原创O2优化前缀和st表洛谷月赛

Choose

题目背景

加强版

对于一个长度为 nn 的序列 aa ,定义 aa 的极差表示 aa 中最大值与最小值之差;定义 C(a,l,r)C(a,l,r) 表示 aa连续子序列 [al,al+1,,ar][a_l,a_{l+1},\dots,a_r],其中 1lrn1\le l\le r\le n

题目描述

给定一个长度为 nn 的序列 aa

你需要选出 aakk 个长度均为 LL (1Lnk+1)(1\le L\le n-k+1) 的不同连续子序列 $C(a,l_1,l_1+L-1),C(a,l_2,l_2+L-1),\dots,C(a,l_k,l_k+L-1)$,其中 1l1<l2<<lknL+11\le l_1<l_2< \dots< l_k\le n-L+1

记这 kk 个子序列中极差的最小值为 XX,你需要求出 XX 的最大值。同时,你还需要求出,在满足 XX 最大的情况下 LL 的最小值。

输入格式

本题有多组测试数据。

第一行一个整数 TT,表示测试数据组数。

对于每组测试数据:

  • 第一行两个整数 n,kn,k
  • 第二行 nn 个整数 a1,a2,...,ana_1,a_2,...,a_n

输出格式

对于每组测试数据:

  • 一行两个整数 X,LX,L,表示所求极差和子序列长度。
3
5 1
1 2 3 4 5
5 2
1 2 3 4 5
5 3
1 2 3 4 5
4 5
3 4
2 3
2
5 1
1 2 2 2 3
5 2
1 2 2 2 3
2 5
1 2

提示

【样例 1 解释】

  • k=1k=1 时,极差最大不超过 44,此时满足长度最短的一种方案为 [1,2,3,4,5][1,2,3,4,5]
  • k=2k=2 时,极差最大不超过 33,此时满足长度最短的一种方案为 [1,2,3,4],[2,3,4,5][1,2,3,4],[2,3,4,5]
  • k=3k=3 时,极差最大不超过 22,此时满足长度最短的一种方案为 [1,2,3],[2,3,4],[3,4,5][1,2,3],[2,3,4],[3,4,5]

【数据规模与约定】

本题采用捆绑测试。

子任务 分值 nn\le kk\le 特殊性质
11 55 10510^5 nn aia_i 均相等
22 11 数据随机生成
33 1010 100100 nn 所求的 XX 不超过 10310^3
44 2020
55 10410^4
66 4040 10510^5

对于 100%100\% 的数据,1T101\le T\le 101n1051\le n\le 10^51kn1\le k\le n109ai109-10^9\le a_i\le 10^9