POJ 2318

来源:互联网 发布:站长域名查询 编辑:程序博客网 时间:2024/06/05 02:02

二分

#include <iostream>using namespace std;const int maxn=5010;int Ui[maxn],Li[maxn],dx[maxn],dy;int amount[maxn];int m,n,x1,y1,x2,y2;int bsearch(int xj,int yj){int low=-1,high=m,mid;while(high-low>1){mid=(high+low)/2;if((dy*(xj-Ui[mid])-dx[mid]*(yj-y1))<0)high=mid;elselow=mid;}return high;}int main(){while(scanf("%d",&m)&&m!=0){cin>>n>>x1>>y1>>x2>>y2;dy=y1-y2;int i;for(i=0;i<m;i++){cin>>Ui[i]>>Li[i];dx[i]=Ui[i]-Li[i];amount[i]=0;}amount[i]=0;int xj,yj,outcome;for(i=0;i<n;i++){cin>>xj>>yj;outcome=bsearch(xj,yj);amount[outcome]++;}for(i=0;i<=m;i++){cout<<i<<": "<<amount[i]<<endl;}cout<<endl;}return 0;}


 

原创粉丝点击