社区讨论

蒟蒻70分求解(玄关)

P1639[USACO18FEB] Teleportation B参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@mhjrmbcm
此快照首次捕获于
2025/11/04 07:22
4 个月前
此快照最后确认于
2025/11/04 07:22
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
#define int long long
#define endl "\n"
#define jiasu ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define jdsr for(int i=0;i<n;i++)  cin>>a[i];
#define jdsc for(int i=0;i<n;i++)  cout<<a[i]<<" ";
using namespace std;
int a,b,x,y,maxn; 
signed main(){
//    freopen(".in","r",stdin);
//    freopen(".out","w",stdout);
	jiasu;
	cin>>a>>b>>x>>y;
	if(x<y){
		if(x>a&&y<b){
			maxn=(x-a)+(b-y);
		}else if(x>a&&y>b){
			maxn=(x-a)+(y-b);
		}else if(x<a&&y<b){
			maxn=(a-x)+(b-y);
		}else if(x<a&&b<y){
			maxn=(a-x)+(y-b);
		}else if(a==x&&y<b){
			maxn=b-y;
		}else if(a==x&&y>b){
			maxn=y-b;
		}else if(b==y&&a<x){
			maxn=x-a;
		}else if(b==y&&a>x){
			maxn=a-x;
		}else{
			maxn=b-a;
		}
	}else if(y<x){
		if(a<y&&x<b){
			maxn=(y-a)+(b-x);
		}else if(a<y&&b<x){
			maxn=(y-a)+(x-b);
		}else if(y<a&&x<b){
			maxn=(a-y)+(b-x);
		}else if(y<a&&b<x){
			maxn=(a-y)+(x-b);
		}else if(a==y&&x<b){
			maxn=b-x;
		}else if(a==y&&x>b){
			maxn=x-b;
		}else if(b==x&&a<y){
			maxn=y-a;
		}else if(b==x&&a>y){
			maxn=a-y;
		}else{
			maxn=b-a;
		}
	}else{
		maxn=b-a;
	}
	if(maxn<0){
		cout<<b-a;
	}else{
		cout<<min(maxn,b-a);
	}
	return 0;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...