309251: CF1650E. Rescheduling the Exam
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Rescheduling the Exam
题意翻译
小 P 有 $n$ 场考试要考,它们的开始时间是 $a_1\sim a_n$(保证 $a$ 按升序排列),所有的考试都会在 $d$ 之前结束。 对于时间相邻的两场考试 $a_{i-1},a_{i}$,定义它们的距离为 $a_{i}-a_{i-1}-1$,而 $a_0$ 与 $a_{1}$ 的距离定义为 $a_n$ 与 $0$ 的距离。 定义对于这个数组 $a$ 的 $\mu$ 值为所有 $a_{i-1}$ 与 $a_{i}$ 之间距离的最小值。 你可以改变某一个 $a_i$ 的值(但不能 $>d$),最大化修改后 $a$ 的 $\mu$ 的值,输出最大的 $\mu$ 值。 翻译提供者:@DaiRuiChen007题目描述
Now Dmitry has a session, and he has to pass $ n $ exams. The session starts on day $ 1 $ and lasts $ d $ days. The $ i $ th exam will take place on the day of $ a_i $ ( $ 1 \le a_i \le d $ ), all $ a_i $ — are different. ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1650E/80b5043cb96246fb12fe0316b7ae224994f04da5.png)Sample, where $ n=3 $ , $ d=12 $ , $ a=[3,5,9] $ . Orange — exam days. Before the first exam Dmitry will rest $ 2 $ days, before the second he will rest $ 1 $ day and before the third he will rest $ 3 $ days.For the session schedule, Dmitry considers a special value $ \mu $ — the smallest of the rest times before the exam for all exams. For example, for the image above, $ \mu=1 $ . In other words, for the schedule, he counts exactly $ n $ numbers — how many days he rests between the exam $ i-1 $ and $ i $ (for $ i=0 $ between the start of the session and the exam $ i $ ). Then it finds $ \mu $ — the minimum among these $ n $ numbers. Dmitry believes that he can improve the schedule of the session. He may ask to change the date of one exam (change one arbitrary value of $ a_i $ ). Help him change the date so that all $ a_i $ remain different, and the value of $ \mu $ is as large as possible. For example, for the schedule above, it is most advantageous for Dmitry to move the second exam to the very end of the session. The new schedule will take the form: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1650E/ea72ffbaa1a469cfa577e07f4a541e64f273ed21.png)Now the rest periods before exams are equal to $ [2,2,5] $ . So, $ \mu=2 $ .Dmitry can leave the proposed schedule unchanged (if there is no way to move one exam so that it will lead to an improvement in the situation).输入输出格式
输入格式
The first line of input data contains an integer $ t $ ( $ 1 \le t \le 10^4 $ ) — the number of input test cases. The descriptions of test cases follow. An empty line is written in the test before each case. The first line of each test case contains two integers $ n $ and $ d $ ( $ 2 \le n \le 2 \cdot 10^5, 1 \le d \le 10^9 $ ) — the number of exams and the length of the session, respectively. The second line of each test case contains $ n $ integers $ a_i $ ( $ 1 \le a_i \le d, a_i < a_{i+1} $ ), where the $ i $ -th number means the date of the $ i $ -th exam. It is guaranteed that the sum of $ n $ for all test cases does not exceed $ 2 \cdot 10^5 $ .
输出格式
For each test case, output the maximum possible value of $ \mu $ if Dmitry can move any one exam to an arbitrary day. All values of $ a_i $ should remain distinct.
输入输出样例
输入样例 #1
9
3 12
3 5 9
2 5
1 5
2 100
1 2
5 15
3 6 9 12 15
3 1000000000
1 400000000 500000000
2 10
3 4
2 2
1 2
4 15
6 11 12 13
2 20
17 20
输出样例 #1
2
1
1
2
99999999
3
0
1
9