【GESP二级模拟题】睡觉
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
李老师每天要睡足 分钟。他定了一个闹钟,会在 分钟后响起。如果此时李老师还没有睡足 分钟,那么他会定一个 分钟的闹钟,并花费 分钟入睡。如果李老师被吵醒后仍未睡足 分钟,那么他会再定 分钟闹钟并花费 分钟入睡……如果某次闹钟响起时他已经睡足了 分钟,李老师就会起床。
请问李老师一共要花费多少分钟才会起床,或者李老师永远不会起床。
输入格式
输入第一行是 ,代表一共 组数据。
接下里 行,每行四个数字 含义见题目描述。
输出格式
输出有 行,分别对应每组样例的结果,如果李老师不会起床,输出 -1,否则输出起床的时间。
样例
2
10 3 6 4
6 5 2 3
27
-1
说明/提示
样例解释
在第一个样例中,李老师在 3 分钟后醒来。他只休息了 3 分钟,而他需要 10 分钟。所以在那之后,他把闹钟设置为每 6 分钟响一次,然后花 4 分钟入睡。因此,他休息了 2 分钟,总共 分钟睡眠时间。
然后他再重复这个过程三次,最后得到 分钟的睡眠时间。
最后他下了床。他在第一个闹钟响之前花了 分钟,然后重置了四次闹钟。答案是 分钟。
在第二个测试用例中,李老师在 5 分钟后醒来。不幸的是,他不停地重设闹钟,连一分钟都不能休息。
数据范围
对于全部数据满足 ,具体数据分布如下:
| 测试点 | 数据范围 |
|---|---|