| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
求大牛帮看看那错啦,WA啊!!!!!!!!!!!!!!#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#define eps 1e-8
using namespace std;
struct point{
double x,y;
};
struct Lin{
point p1,p2;
}lin[105];
int n;
double xmult(point p1,point p2,point p0){
return (p1.x-p0.x)*(p2.y-p0.y)-(p2.x-p0.x)*(p1.y-p0.y);
}
bool check(point pt1,point pt2)
{
if(fabs(pt1.x-pt2.x)<eps&&fabs(pt1.y-pt2.y)<eps)return false;
for(int i=1;i<=n;i++){
if(((xmult(lin[i].p1,pt1,pt2))*(xmult(lin[i].p2,pt1,pt2)))>eps)
return false;
}
return true;
}
bool slove()
{
if(n<=2)return true;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++){
if(check(lin[i].p1,lin[j].p1))return true;
if(check(lin[i].p1,lin[j].p2))return true;
if(check(lin[i].p2,lin[j].p1))return true;
if(check(lin[i].p2,lin[j].p1))return true;
}
return false;
}
int main()
{
//freopen("in.txt","r",stdin);
int t;
scanf("%d",&t);
while(t--){
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%lf %lf %lf %lf",&lin[i].p1.x,&lin[i].p1.y,&lin[i].p2.x,&lin[i].p2.y);
if(slove())printf("Yes!\n");
else printf("No!\n");
}
return 0;
}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator