编程题

1727:魔棒


时间限制: 1000 ms         内存限制: 131072 KB
提交数:213    通过数: 71

【题目描述】

有一个英雄,初始生命值是$hp$(生命值无上限),在接下来的$n$秒内,每秒会受到一次伤害,第i秒受到的伤害值为$a[i]$。这个英雄有一个道具“魔杖”,魔杖的初始能量为$0$,每受到一次伤害,积攒一点能量。在英雄受到伤害后,可以立即释放魔棒中的能量,恢复$15×$[能量点数]的生命值,且魔棒的点数清零。释放能量有施法间隔$cd$($cd$是正整数),即相邻的两次释放的时间间隔至少有$cd$秒。任何时刻当$hp≤0$时视为死亡,问这个英雄存活下来的前提下,$cd$的值最大可以是多少?

注意,若$a[i]$为负,受到“伤害”后实际上生命值是增加的,魔棒仍然积攒能量。

【输入】

第一行两个正整数$n,hp$,含义如题目所述。

第二行$n$个整数,分别是$a[1]..a[n]$。

【输出】

一个数,最大的$cd$,$cd$是一个正整数。

如果$cd$没有上限,输出“No upper bound.”;如果无论如何都不能存活,输出$-1$。

【输入样例】

7 30
20 5 30 4 10 5 20

【输出样例】

2

【提示】

【数据规模】

对于30%的数据,$n≤12$;

对于100%的数据,$n≤500,|a[i]|≤1000$。

查看答案
赣ICP备20007335号-2