求Debug
查看原帖
求Debug
336603
出言不逊王子楼主2021/3/27 18:57

RT,60分

#include<bits/stdc++.h>
#define HCL_AK_IOI 114514
#define fs(i,x,y,z) for(register int i=x;i<=y;i+=z)
#define ft(i,x,y,z) for(register int i=x;i>=y;i+=z)
#define ll long long
#define ull unsigned long long
#define db double
#define ms(a,b) memset(a,b,sizeof(a))
#define sz(a) sizeof(a)
using namespace std;
const ll N=100001,inf=0x3f3f3f3f;
const ll rw[]={-1,0,1,0,-1,1,-1,1},cl[]={0,1,0,-1,-1,1,1,-1};
inline ll read(){
	ll date=0,w=1;char c=0;
	while(c<'0'||c>'9'){if(c=='-')w=-1;c=getchar();}
	while(c>='0'&&c<='9'){date=date*10+c-'0';c=getchar();}
	return date*w;
}
ll t,a[4];
inline ll gcd(ll aa,ll b){return b?gcd(b,aa%b):aa;} 
int mian(){
	a[0]=a[1]=a[2]=0;
	scanf("%lld%lld%lld",a,a+1,a+2);
//	sort(a,a+2);
//	printf("!%lld %lld %lld\n",a[0],a[1],a[2]);
	if((a[0]==0&&a[1]==0)||(a[0]==0&&a[2]==0)||(a[1]==0&&a[2]==0)){
		puts("0");
		return 0;
	}
	if(a[0]==0||a[1]==0||a[2]==0){
		if(a[0]==a[1]||a[1]==a[2]||a[0]==a[2]){
			puts("1");
			return 0;
		}
		puts("2");
		return 0;
	}else{
		ll r=gcd(a[0],gcd(a[1],a[2]));
		a[0]/=r,a[1]/=r,a[2]/=r;
		ll x=(a[1]+a[2]-a[0])/2,y=a[0]+a[1]+a[2];
		if(a[0]*2==y||a[1]*2==y||a[2]*2==y||x==a[2]||x==a[1]||a[0]==a[1]||a[0]==a[2]) puts("2");
		else puts("3");
		return 0;
	}
}
int main(){
#ifndef HCL_AK_IOI
	freopen("cake.in","r",stdin);
	freopen("cake.out","w",stdout);
#endif
	scanf("%lld",&t);
	while(t--) mian();
	return 0;
}
2021/3/27 18:57
加载中...