| ||||||||||
| 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 | |||||||||
一次ac#include<iostream>
using namespace std;
struct horizon
{
int hx1;
int hy1;
int hx2;
int hy2;
};
struct vertion
{
int vx1;
int vy1;
int vx2;
int vy2;
};
int comv(const void * A,const void * B)
{
vertion v = *(vertion *)A;
vertion v1 = *(vertion *)B;
return v.vx1-v1.vx1;
}
int comh(const void * A,const void * B)
{
horizon h = *(horizon *)A;
horizon h1 = *(horizon *)B;
return h.hy1-h1.hy1;
}
int main()
{
horizon h[101];
vertion v[101];
int case_num,h_num,v_num;
cin>>case_num;
for(int i=0;i<case_num;i++)
{
h_num=0;
v_num=0;
int test_num;
int x1,y1,x2,y2;
cin>>test_num;
for(int j=0;j<test_num;j++)
{
cin>>x1>>y1>>x2>>y2;
if(x1 == x2)
{
v[v_num].vx1=x1;
v[v_num].vy1=y1<y2?y1:y2;
v[v_num].vx2=x2;
v[v_num].vy2=y2>y1?y2:y1;
v_num++;
}
else
{
h[h_num].hx1=x1<x2?x1:x2;
h[h_num].hy1=y1;
h[h_num].hx2=x2>x1?x2:x1;
h[h_num].hy2=y2;
h_num++;
}
}
qsort(v,v_num,sizeof(v[0]),comv);
qsort(h,h_num,sizeof(h[0]),comh);
int result = 0;
for(int i=0;i<=v_num-2;i++){
for(int j=i+1;j<=v_num-1;j++){
for(int k=0;k<=h_num-2;k++){
for(int z=k+1;z<=h_num-1;z++){
if(v[i].vy1<=h[k].hy1&&v[i].vy2>=h[z].hy1&&v[j].vy1<=h[k].hy1&&v[j].vy2>=h[z].hy1&&
h[k].hx1<=v[i].vx1&&h[k].hx2>=v[j].vx1&&h[z].hx1<=v[i].vx1&&h[z].hx2>=v[j].vx1)
result++;
}
}
}
}
cout<<result<<endl;
}
return 0;
}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator