三角形外接圆的圆心在三角形中心上,就轻松解决了。
#pragma warning(disable:4786)
#include<iostream>
#include<algorithm>
#include<cmath>
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<queue>
#include<set>
#include<vector>
#include<string>
#include<ctime>
#include<string.h>
using namespace std;
#define pi acos(-1.0)
//#define LL __int64
typedef long long LL;
#define INF 0x7fffffffffffffffdin)
#define bug puts("hear!")
#define inf 0x7fffffff
#define FRE freopen("in.txt","r",st
#define E exp(1.0)
#define mod 1000000007
const double eps=1e-14;
int main()
{
int T,tt=0;
double x1,y1,x2,y2,x3,y3,xx,yy,x,y;
cin>>T;
while(T--)
{
cin>>x1>>y1>>x2>>y2>>x3>>y3>>xx>>yy;
x=(x1+x2+x3)/3;
y=(y1+y2+y3)/3;
double r,rr;
r=sqrt((x1-x)*(x1-x)+(y1-y)*(y1-y));
rr=sqrt((x-xx)*(x-xx)+(y-yy)*(y-yy));
if(rr-r<eps)cout<<"Case #"<<++tt<<": Danger"<<endl;
else cout<<"Case #"<<++tt<<": Safe"<<endl;
}
return 0;
}