CF1613C.Poisoned Dagger
普及-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Monocarp is playing yet another computer game. In this game, his character has to kill a dragon. The battle with the dragon lasts 100500 seconds, during which Monocarp attacks the dragon with a poisoned dagger. The i-th attack is performed at the beginning of the ai-th second from the battle start. The dagger itself does not deal damage, but it applies a poison effect on the dragon, which deals 1 damage during each of the next k seconds (starting with the same second when the dragon was stabbed by the dagger). However, if the dragon has already been poisoned, then the dagger updates the poison effect (i.e. cancels the current poison effect and applies a new one).
For example, suppose k=4, and Monocarp stabs the dragon during the seconds 2, 4 and 10. Then the poison effect is applied at the start of the 2-nd second and deals 1 damage during the 2-nd and 3-rd seconds; then, at the beginning of the 4-th second, the poison effect is reapplied, so it deals exactly 1 damage during the seconds 4, 5, 6 and 7; then, during the 10-th second, the poison effect is applied again, and it deals 1 damage during the seconds 10, 11, 12 and 13. In total, the dragon receives 10 damage.
Monocarp knows that the dragon has h hit points, and if he deals at least h damage to the dragon during the battle — he slays the dragon. Monocarp has not decided on the strength of the poison he will use during the battle, so he wants to find the minimum possible value of k (the number of seconds the poison effect lasts) that is enough to deal at least h damage to the dragon.
Monocarp 正在玩另一款电脑游戏。在该游戏中,他的角色需要击杀一条巨龙。与巨龙的战斗持续 100500 秒,在此期间 Monocarp 使用一把毒匕首攻击巨龙。第 i 次攻击发生在战斗开始后的第 ai 秒初。匕首本身不造成伤害,但它会使巨龙中毒,中毒效果在接下来的 k 秒内(包括被刺中的那一秒)每秒造成 1 点伤害。然而,若巨龙当前已处于中毒状态,则匕首会刷新中毒效果(即取消当前中毒效果,并施加一个新的中毒效果)。
例如,假设 k=4,且 Monocarp 在第 2、4 和 10 秒对巨龙进行刺击。那么中毒效果于第 2 秒初施加,并在第 2 和第 3 秒各造成 1 点伤害;接着,在第 4 秒初,中毒效果被重新施加,因此在第 4、5、6 和 7 秒各造成 1 点伤害;然后,在第 10 秒,中毒效果再次被施加,并在第 10、11、12 和 13 秒各造成 1 点伤害。总计,巨龙受到 10 点伤害。
Monocarp 知道巨龙有 h 点生命值,若他在整场战斗中对巨龙造成的总伤害不少于 h,则他将成功击杀巨龙。Monocarp 尚未决定战斗中所用毒药的强度,因此他希望找出最小的可能的 k 值(即中毒效果持续的秒数),使得对巨龙造成的总伤害至少为 h。
输入格式
The first line contains a single integer t (1≤t≤1000) — the number of test cases.
The first line of the test case contains two integers n and h (1≤n≤100;1≤h≤1018) — the number of Monocarp's attacks and the amount of damage that needs to be dealt.
The second line contains n integers a1, a2, ..., an (1≤ai≤109;ai<ai+1), where ai is the second when the i-th attack is performed.
第一行包含一个整数 t(1≤t≤1000)—— 测试用例的数量。
每个测试用例的第一行包含两个整数 n 和 h(1≤n≤100;1≤h≤1018)—— 分别表示 Monocarp 的攻击次数以及需要造成的总伤害量。
每个测试用例的第二行包含 n 个整数 a1, a2, ..., an(1≤ai≤109;ai<ai+1),其中 ai 表示第 i 次攻击发生的时刻(单位:秒)。
输出格式
For each test case, print a single integer — the minimum value of the parameter k, such that Monocarp will cause at least h damage to the dragon.
对于每个测试用例,输出一个整数——使得 Monocarp 对巨龙造成的伤害至少为 h 的参数 k 的最小值。
输入输出样例
输入#1
4 2 5 1 5 3 10 2 4 10 5 3 1 2 4 5 7 4 1000 3 25 64 1337
输出#1
3 4 1 470
说明/提示
In the first example, for k=3, damage is dealt in seconds [1,2,3,5,6,7].
In the second example, for k=4, damage is dealt in seconds [2,3,4,5,6,7,10,11,12,13].
In the third example, for k=1, damage is dealt in seconds [1,2,4,5,7].
在第一个例子中,当 k=3 时,伤害发生在时间秒 [1,2,3,5,6,7]。
在第二个例子中,当 k=4 时,伤害发生在时间秒 [2,3,4,5,6,7,10,11,12,13]。
在第三个例子中,当 k=1 时,伤害发生在时间秒 [1,2,4,5,7]。
输入解题思路,AI测评打分。不知道怎么写?