Type: Default 2000ms 256MiB

水箱

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

Bob想建造一个水箱。水箱底部有一块珊瑚,由nn列组成,其中第ii列的高度为aia_i。他将按照以下方式依靠珊瑚建造一个水箱:

  • 选择一个整数h1h\geq1,作为水箱的高度。在水箱的两侧建造高度为hh的墙壁。
  • 将水箱填满水,使得每一列的高度都为hh;如果珊瑚高度超过hh,则该列不需要添水。

例如,对于a=[3,1,2,4,6,2,5]a=[3,1,2,4,6,2,5],并且水箱的高度为h=4h=4,你将使用总共w=8w=8个单位的水,如图所示。 image

Bob可以使用最多xx个单位的水来填充水箱,但他想要建造尽可能高的水箱。他能选择的最大hh值是多少?

输入格式

第一行包含一个整数tt,表示测试用例的数量。

每个测试用例的第一行包含两个正整数nnxx,表示珊瑚的列数和Bob可以使用的最大水量。

每个测试用例的第二行包含nn个以空格分隔的整数aia_i,表示珊瑚的高度。

所有测试用例中nn的总和不超过21052\cdot10^5

输出格式

对于每个测试用例,输出一个正整数h(h1)h(h\geq 1),表示水箱的最大高度,使得Bob需要至多xx个单位的水来填充水箱。

5
7 9
3 1 2 4 6 2 5
3 10
1 1 1
4 1
1 4 3 4
6 1984
2 6 5 9 1 8
1 1000000000
1
4
4
2
335
1000000001

提示

【样例解释】

第一个测试用例在题目中已经给出了。当h=4h=4时,BobBob需要88个单位的水,但是如果将hh增加到55,Bob将需要1313个单位的水,这超过了x=9x=9。因此,h=4h=4是最优解。

对于第二个测试用例,Bob可以选择h=4h=4,并向每一列添加33个单位的水,总共使用了99个单位的水。可以证明这是最优解。

对于第三个测试用例,Bob可以选择h=2h=2,使用所有的水,因此这是最优解。

【数据范围】

对于所有数据,保证:$1\leq t \leq 10^4,1\leq n\leq2\cdot10^5,1\leq x\leq 10^9,1\leq a_i\leq 10^9$。所有测试用例中nn的总和不超过21052\cdot10^5

C23本部国庆集训测试

Not Attended
Status
Done
Rule
IOI
Problem
7
Start at
2023-10-5 13:30
End at
2023-10-5 15:30
Duration
2 hour(s)
Host
Partic.
10