• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 100,  comments - 15,  trackbacks - 0
            //計算幾何第一題
            //學習了叉積和利用叉積判斷左右位置關系
            //叉積+二分
            //延續了這兩天比賽的PE黑手
            #include<iostream>
            using namespace std;
            #define MAXN 5000+1
            #define eps 1e-8
            #define _sign(x) ((x)>eps?1:((x)<-eps?2:0))

            struct point{int x,y;};
            struct line{point a,b;};

            int ans[MAXN];
            point toys[MAXN];
            line board[MAXN];

            double xmult(point p0,point p1,point p2){//叉積,囧
                return (p1.x-p0.x)*(p2.y-p0.y)-(p2.x-p0.x)*(p1.y-p0.y);
            }

            int main()
            {
                
            int n,m,x1,y1,x2,y2,u1,u2,i;
                
            bool flag=false;
                
            while(scanf("%d",&n)!=EOF && n )
                
            {
                    
            if(flag) printf("\n");
                    memset(ans,
            0,sizeof(ans));
                    scanf(
            "%d%d%d%d%d",&m,&x1,&y1,&x2,&y2);
                    
            for(i=0;i<n;i++)
                    
            {
                        scanf(
            "%d%d",&u1,&u2);
                        board[i].a.x
            =u1;
                        board[i].a.y
            =y1;
                        board[i].b.x
            =u2;
                        board[i].b.y
            =y2;
                    }

                    board[n].a.x
            =x2;
                    board[n].a.y
            =y1;
                    board[n].b.x
            =x2;
                    board[n].b.y
            =y2;
                    
            for(i=0;i<m;i++)
                    
            {
                        scanf(
            "%d%d",&(toys[i].x),&(toys[i].y));
                        
            int low=0,hig=n,mid;
                        
            while(low+1<hig)
                        
            {
                            mid
            =(low+hig)>>1;
                            
            double res=xmult(board[mid].a,board[mid].b,toys[i]);
                            
            //if(res>0)
                            if(res>0) low=mid;
                            
            else hig=mid;
                        }

                        
            if(xmult(board[low].a,board[low].b,toys[i])<0) ans[low]++;
                        
            else  ans[low+1]++;
                    }

                    
            for(i=0;i<=n;i++)
                    
            {
                        printf(
            "%d: %d\n",i,ans[i]);
                    }

                    flag
            =true;
                }

                
            return 0;
            }
            posted on 2009-10-04 12:14 wyiu 閱讀(153) 評論(0)  編輯 收藏 引用 所屬分類: POJ
            国产一区二区精品久久岳 | 久久亚洲精品无码播放| 国产Av激情久久无码天堂| 中文字幕人妻色偷偷久久| 久久婷婷五月综合成人D啪| 手机看片久久高清国产日韩| 婷婷久久综合| 国产精品9999久久久久| a级毛片无码兔费真人久久| 久久综合五月丁香久久激情| 一极黄色视频久久网站| 亚洲AV无码1区2区久久| 国产精品久久久久久久| 老司机午夜网站国内精品久久久久久久久 | AV色综合久久天堂AV色综合在| 久久永久免费人妻精品下载| 亚洲欧美精品伊人久久| 国产精品久久久久久久app| 狠狠色丁香婷综合久久| 欧美久久久久久精选9999| 人妻少妇久久中文字幕一区二区| 2020久久精品国产免费| 欧美久久天天综合香蕉伊| 久久66热人妻偷产精品9| 怡红院日本一道日本久久| 久久夜色精品国产| 午夜不卡888久久| 欧美噜噜久久久XXX| 久久笫一福利免费导航| 91精品国产91久久久久福利| 亚洲精品无码久久不卡| 亚洲国产精品久久久久婷婷软件| 久久久久人妻一区二区三区| 丁香久久婷婷国产午夜视频| 日产精品久久久久久久| 久久久久久久久66精品片| 精品久久久久久久久久久久久久久| 国内精品伊人久久久久AV影院| 四虎亚洲国产成人久久精品| 久久久久国产| 欧美久久综合九色综合|