萌新58分求助
查看原帖
萌新58分求助
541553
wangshi楼主2021/10/2 08:58
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
long long ans1[1000001];
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		long long a,b,c,d,ans=0,s1,s2;
		cin>>a>>b>>c>>d;
		s1=abs(a-c),s2=abs(b-d);
		if(a==c&&b==d)
		{
			ans1[i]=0;
			continue;
		}
		if(a==c)
		{
			ans=abs(b-d);
			if(ans==1)			
			{
				ans1[i]=ans;
				continue;
			}
			if(ans%2==0) ans*=2;
			else ans=(ans-1)*2+1; 
		}
		if(b==d)
		{
			ans=abs(a-c);
			if(ans==1)			
			{
				ans1[i]=ans;
				continue;
			}
			if(ans%2==0) ans*=2;
			else ans=(ans-1)*2+1; 			
		}
		if(s1==s2) ans=s1*2;
		if(s1>s2)
		{
			ans=s2*2;
			s1-=s2;
			if(s1==1) 
			{
				ans1[i]=ans+1;
				continue;
			}
			if(s1%2==0) ans+=s1*2;
			else ans+=(s1-1)*2+1; 
		}
		if(s1<s2)
		{
			ans=s1*2;
			s2-=s1;
			if(s2==1) 
			{
				ans1[i]=ans+1;
				continue;
			}

			if(s2%2==0) ans+=s2*2;
			else ans+=(s2-1)*2+1;			 			
		}
		ans1[i]=ans;
	} 
	for(int i=1;i<=n;i++)
	{
		cout<<ans1[i]<<endl;
	}
	return 0;
}
2021/10/2 08:58
加载中...