#1428. [L1-5] 铁甲战士

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: bosun

题目描述

「铁甲战士」,铁甲军团的一员,曾向恶魔许愿,祈祷成为最强者,出卖自己的灵魂

他获得了恶魔的力量,但却被恶魔玩弄,以火杀光了他的族人

于悔恨与愤恨中,前往高塔,寻求最后一点希望

在初入高塔时,他碰到了第一位敌人「Kaka」


「Kaka」初始时拥有 点生命值。每当「Kaka」受到 点伤害,将会使他的生命值减 。当「Kaka」生命值为 或更小时,「Kaka」将会死亡。而「铁甲战士」初始时仅拥有 点生命值。当「铁甲战士」生命值为 或更小时,「铁甲战士」也会死亡。

在每回合开始后,按照先后顺序依次进行:

1.「铁甲战士」可以选择:

(1) 获得 点格挡,可以累计抵挡 点伤害。回合结束后,格挡将会继承到下一回合;

(2)对「Kaka」造成 点伤害;

2.「Kaka」对「铁甲战士」造成 点伤害。

「铁甲战士」至少需要多少个回合,在自身不死亡的情况下,使「Kaka」死亡?

输入格式

一行,输入用空格隔开的四个整数 ,分别表示:

「Kaka」的生命值、「Kaka」对「铁甲战士」造成的伤害、「铁甲战士」获得的格挡数、「铁甲战士」对「Kaka」造成的伤害。

输出格式

一个整数,表示击败「Kaka」所需的最少回合数。

若永远无法击败「Kaka」,或者「铁甲战士」一定死亡,则输出

样例

样例输入1

7 3 5 2

样例输出1

9

样例解释1

第一回合,「铁甲战士」获得 点格挡,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第二回合,「铁甲战士」获得 点格挡,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第三回合,「铁甲战士」造成 点伤害,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第四回合,「铁甲战士」获得 点格挡,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第五回合,「铁甲战士」造成 点伤害,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第六回合,「铁甲战士」获得 点格挡,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第七回合,「铁甲战士」获得 点格挡,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第八回合,「铁甲战士」造成 点伤害,「Kaka」造成 点伤害,「铁甲战士」还剩下 点格挡,「Kaka」还剩下 点生命值。

第九回合,「铁甲战士」获得 点伤害,「Kaka」死亡,将不会造成伤害。


样例输入2

7 5 3 4

样例输出2

-1

样例解释2

第一回合,「铁甲战士」获得 点格挡,「Kaka」造成 点伤害,「铁甲战士」死亡。故输出


样例输入3

7 5 3 9

样例输出3

1

样例解释3

第一回合,「铁甲战士」造成 点伤害,「Kaka」死亡,将不会造成伤害。


样例输入4

7 3 5 0

样例输出4

-1

样例解释4

因为「铁甲战士」永远都不能造成伤害,所以永远都不能击败「Kaka」。故输出

数据范围与提示

对于 的数据,满足:若能击败「Kaka」,则所需的最少回合数小于

对于所有的数据,满足:

若能击败「Kaka」,则所需的最少回合数小于