#include<iostream>
#include<string.h>
#include<algorithm>
#include<stdio.h>
using namespace std;
int pan(int x1,int y1,int x2,int y2)
{
return x1*y2-x2*y1;
}
int uu[5500];
int ll[5500];
int num[5500];
int main()
{
int n,m,x1,y1,x2,y2,x,y;
int i;
while(cin>>n)
{
if(n==0)break;
cin>>m>>x1>>y1>>x2>>y2;
memset(num,0,sizeof(num));
for(i=1;i<=n;i++)
{
scanf("%d%d",&uu[i],&ll[i]);
}
for(i=1;i<=m;i++)
{
scanf("%d%d",&x,&y);
if(!(x>=x1&&x<=x2&&y>=y2&&y<=y1))continue;
int l=1;
int r=n+1;
int mid=(l+r)/2;
while(l<r)
{
if(pan(x-ll[mid],y-y2,uu[mid]-x,y1-y)>0)l=mid+1;
else r=mid;
mid=(l+r)/2;
}
num[mid-1]++;
// cout<<mid<<endl;
}
for(i=0;i<=n;i++)
{
printf("%d: %d\n",i,num[i]);
}
cout<<endl;
}
return 0;
}
poj-2318-TOYS
最新推荐文章于 2020-12-05 19:37:00 发布