题目描述:
小气正在玩一款名为“攻城计”的策略游戏。现在,小七正在率领自己的军队攻打一座城池。
通过一段时间的游玩,小七的军队目前有a辆坦克。而“攻城计”是一个回合制游戏,一个回合如下:
小七的军队中的每辆坦克攻击锁选择的一座碉堡。这座碉堡损失一点生命值。当一座碉堡失去所有的生命值时,它就被摧毁了。小七可以为每辆坦克独立选择碉堡。
小七的对手进攻。炸毁k*c辆坦克,其中:k是剩余的碉堡的数量,每个碉堡可以炸毁c辆坦克。
通过侦察兵,小七探明了敌情:战场上有d座敌方碉堡,每一座碉堡都有b点生命值,摧毁所有的碉堡后,小七就攻下了这座城池(即使小七没有坦克了,也算攻下了这座城池)。反之如果小七没有坦克了,地方还有碉堡,小七就失败了。现在小七想提前知道自己能否获胜,你能帮帮小七吗?
输入描述:
一行四个空格隔开的整数a, b, c, d,其中1<=a<=1000000, 1<=b,c,d<=10000
输出描述:
输出一个数,如果小七可以获胜,输出所需的最小回合数,否则输出-1。
样例输入:
10 6 8 2
样例输出:
2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
int d = sc.nextInt();
int k = d;
int zh = k * b;
int ans = 0;
while (a > 0 && zh > 0) {
zh -= a;
k = zh / b + 1;
a -= k * c;
ans++;
}
if (zh <= 0) {
System.out.println(ans);
} else {
System.out.println(-1);
}
}
}



