Codeforces 1282A Temporarily unavailable

题目链接:

Codeforces 1282A Temporarily unavailable

思路:

将四个端点位置进行分类讨论即可

代码:

#include<bits/stdc++.h>
using namespace std;
typedef pair<int,int> P;
typedef long long LL;
#define fi first
#define sc second
#define pb(a) push_back(a)
#define mp(a,b) make_pair(a,b)
#define pt(a) cerr<<a<<"---\n"
#define rp(i,n) for(int i=0;i<n;i++)
#define rpn(i,n) for(int i=1;i<=n;i++)
int main(){
	ios::sync_with_stdio(false); cin.tie(nullptr);
	int t; cin>>t;
	while(t--){
		int a,b,c,r; cin>>a>>b>>c>>r;
		if(a>b) swap(a,b);
		int d=c-r,e=c+r;
		if(d<=a){
			if(e<a) cout<<b-a<<'\n';
			else if(e<b) cout<<b-e<<'\n';
			else cout<<0<<'\n';
		}else if(d<b){
			if(e<b) cout<<b-a-e+d<<'\n';
			else cout<<d-a<<'\n';
		}else cout<<b-a<<'\n';
	}
	return 0;
}
posted @ 2019-12-25 19:07  YuhanのBlog  阅读(148)  评论(0编辑  收藏  举报