Problem F: 【2021提高】战士
Description
小 X 在玩一款操控战士和怪物战斗的游戏。战士初始生命值为 iH、初始攻击力为 iA。怪物只有一个,初始生命值为 H。
战斗是回合制的,且有一个回合数限制 M。如果在 M 回合内怪物还没有被杀死,小 X
就失败了。在每个回合,战士先行动,怪物再行动。
每当战士行动,小 X 可以命令战士做以下两件事中的一件:
· 攻击,让怪物的生命值减少当前战士攻击力的数值。
· 磨刀,让战士攻击力增加 dA。
每当怪物行动,怪物会攻击战士,使战士的生命值减少 Ci,其中 i 为回合数。当一个角色生命值小于等于 0 时,角色会死亡。
· 如果怪物死亡,那么战斗就结束了。
· 如果战士死亡,会立刻复活,将生命值和攻击力恢复为初始数值。 现在小 X 想问问你,最少能在几个回合内杀死怪物。
Input
第一行,5 个整数,分别为 iH,iA,H,dA,M,意义见问题描述。
第二行 M 个整数,表示第 i 个回合怪物的攻击力 Ci。
Output
输出一行一个整数表示最少能在几个回合内杀死怪物。如果 M 回合内杀不死,输出-1。
Sample Input Copy
4 1 6 1 8
2 1 1 1 1 1 1 1
Sample Output Copy
5
HINT
样例解释
其中一种合法方案:
第一回合:战士磨刀,战士攻击力变为 2;怪物攻击,战士生命值变成 2。第二回合:战士攻击,怪物生命值变为 4;怪物攻击,战士生命值变成 1。
第三回合:战士攻击,怪物生命值变为 2;怪物攻击,战士死亡后复活,生命值变为 4, 攻击力变为 1。
第四回合:战士攻击,怪物生命值变为 1;怪物攻击,战士生命值变成 3。第五回合:战士攻击,怪物死亡。
数据规模
本题共有 10 个测试点,每个测试点 10 分。
对于全部测试点:1<=iH,iA,H<=10^9,0<=dA<=10^9,1<=M<=2*10^5 对于测试点 1 :dA=0,M<=2*10^5
对于测试点 2-3 :M<=20
对于测试点 4-5 :M<=30
对于测试点 6-8 :M<=10^3 对于测试点 9-10:M<=2*10^5