思路
- 题意:一个人要睡至少a分钟,闹钟在b时刻第一次响起,之后人把闹钟设定为c小时后响,并且重新入睡需要d分钟,问人要睡饱总共需要多久
- 就是一个水题,如果b<a并且c<=d就直接输出-1,不可能睡饱,否则算一下还需要经过多少次c分钟可以睡饱即可
代码
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll;
int main(){
ll a,b,c,d;
int T;
cin >> T;
while(T--){
cin >> a >> b >> c >> d;
ll t;
if(a>b&&c<=d){cout << -1 << "\n";continue;}
a-=b;
if(a<=0){cout << b << "\n";continue;}
t=a/(c-d);
if(a%(c-d))t++;
ll sum= t*c+b;
cout << sum << "\n";
}
}
版权声明:本文为weixin_45080867原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。