小紫和小蓝是一对双胞胎,但是在游乐场里走散了。然而她们有超能力。
当她们分开一段时间后,可以感应对方的位置,让二人重聚——然而如果距离太远,那么感应也无可奈何。
具体地:
当双胞胎的一个人能感应到另一个人的位置,就可以行动使得两人重聚。
现在小紫和小蓝已经分离了 t 分钟,当前距离为 d。她们都在原地等候。
请判断至少还需要几分钟,才能让双胞胎中的一个人感应到另一个人的位置?
输入共有一行六个正整数 t,d,t1,d1,t2,d2,含义如题目描述所示。
输出一行一个整数,表示至少还需要等几分钟。特别地,如果无论等待多久都无法感应到,输出 −1。
7 2 10 8 12 15
3
11 8 12 19 10 8
0
100 100 10 7 12 99
-1
【样例 1 解释】
小紫在等待至少 10 分钟后,能在距离不超过 8 时感应到小蓝的位置。
小蓝在等待至少 12 分钟后,能在距离不超过 15 时感应到小紫的位置。
目前已经等待 7 分钟,且两人距离为 2。再等待 3 分钟,就能让小紫开启感应,并感应到小蓝了。
【样例 2 解释】
目前已经等待了 11 分钟,小蓝在 1 分钟前已经开启感应,并感应到小紫了,不需要额外等待。
【样例 3 解释】
无论双胞胎等多久,感应范围都达不到 100,所以永远无法感应到对方。
【数据范围】
对于全体数据,保证 1≤t,d,t1,d1,t2,d2≤100。
本人90分的代码,希望有大佬帮忙调一下!
#include<bits/stdc++.h>
#define int long long
using namespace std;
int t,d,t1,d1,t2,d2,dmax=-99999,tmin=-99999,dmin;
signed main(){
cin>>t>>d>>t1>>d1>>t2>>d2;
dmax=max(d1,d2);
if(dmax<d){
cout<<"-1";
return 0;
}
else if(t>=t1&&d1>=d || t>=t2&&d2>=d){
cout<<"0";
}
else if(d1>=d&&t1<t2){
cout<<t1-t;
}
else{
cout<<t2-t;
}
return 0;
}