萌新求助
查看原帖
萌新求助
646208
Hughpig楼主2024/7/16 16:49

why WA

#include<bits/stdc++.h>
using namespace std;
#define up(l,r,i) for(int i=(l);(i)<=(r);++i)

struct point{
	double x,y;
}a,b,c;

double dist(point x,point y){
	return (x.x-y.x)*(x.x-y.x)+(x.y-y.y)*(x.y-y.y);
}

bool equal(double x,double y){
	return abs(x-y)<=1e-3;
}

int main()
{
    int TestCases=1;
    cin>>TestCases;
    up(1,TestCases,T){
    	cin>>a.x>>a.y>>b.x>>b.y>>c.x>>c.y;
    	double A=dist(b,c);
    	double B=dist(a,c);
    	double C=dist(a,b);
    	if(C<A)swap(A,C);
		if(C<B)swap(B,C);
    	cout<<"Scenario #"<<T<<": ";
    	if(equal(A,B)&&equal(B,C)&&equal(A,C)){
    		cout<<"Equilateral Equiangular\n";
    		continue;
		}
		if(equal(A+B,C))cout<<"Isosceles Right Triangle\n";
		else if(A+B<C)cout<<"Scalene Obtuse\n";
		else cout<<"Scalene Acute\n";
    }
	return 0;
}
2024/7/16 16:49
加载中...