送礼物(二分答案+单调队列)

QUESTION:
JYY和CX的结婚纪念日即将到来,JYY来到萌萌开的礼品店选购纪念礼物。萌萌的礼品店很神奇,所有出售的礼物都按照特定的顺序都排成一列,而且相邻的礼物之间有一种神秘的美感。于是,JYY决定从中挑选连续的一些礼物,但究竟选 哪些呢?假设礼品店一共有\(N\)件礼物排成一列,每件礼物都有它的美观度。排在第\(i\)(\(1\leq i \leq N\))个位置的礼物美观度为正整数\(A_i\)。JYY决定选出其中连续的一段,即编号为礼物\(i\),\(i+1\),....,\(j-1\),\(j\)的礼物。选出这些礼物的美观程度定义为:

(\(M(i,j)\)?\(m(i,j)\))\(\div\)\((j-i+k)\)

其中\(M\)\((\)\(i\)\(,\)\(j\)\()\)表示\(max\){\(A_i\),\(A_i+1\)\(,\)\(....\)\(A_j\)}
\(m\)\((\)\(i\)\(,\)\(j\)\()\)表示\(min\){\(A_i\),\(A_i+1\)\(,\)\(....\)\(A_j\)}\(,\)\(k\)为给定的正整数。

由于不能显得太小气,所以\(JYY\)\(所\)选礼物的件数最少为\(L\)件;同时,选得太多也不好拿,因此礼物最多选\(R\)件。\(JYY\)应该如何选择,才能得到最大的美观程度?由于礼物实在太多挑花眼,\(JYY\)打算把这个问题交给会编程的你。

输入格式

本题每个测试点有多组数据。
输入第一行包含一个正整数\(T\)(\(T \leq 10\)),表示有\(T\)组数据。
每组数据包含两行.
第一行四个非负整数\(N\),\(K\),\(L\),\(R\)(\(2\leq L\leq R\leq N\))。
第二行包含N个正整数,依次表示\(A_1,A_2....A_n\)(\(A_i\leq 10^8\))\(N,K\leq 50,000\)

输出格式

输出\(T\)行,每行一个非负实数,依次对应每组数据的答案,数据保证答案不会超过\(10^3\)。输出四舍五入保留\(4\)位小数。

往下\(\bigvee\)






































































































继续






































































































快到了






































































































50M






































































































40M






































































































30M






































































































20M






































































































10M






































































































XIBER!!!
解答:

猜你喜欢

转载自www.cnblogs.com/SZJZC/p/11407434.html