• <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
            欧美伊人久久大香线蕉综合| 亚洲香蕉网久久综合影视| AAA级久久久精品无码区| 99久久99久久精品国产片果冻| 精品久久久久久无码人妻蜜桃 | 欧美国产成人久久精品| 无码AV中文字幕久久专区| 久久亚洲私人国产精品| 九九久久精品国产| 国产69精品久久久久9999| 久久国产精品免费一区| 久久精品国产第一区二区三区| 久久久久国产一区二区| 国产精品狼人久久久久影院| 无码久久精品国产亚洲Av影片| 久久亚洲国产最新网站| 亚洲精品无码久久毛片| 亚洲性久久久影院| 99久久精品免费看国产一区二区三区 | 国产精品亚洲综合专区片高清久久久| 久久综合精品国产二区无码| 精品国产青草久久久久福利| 一本综合久久国产二区| 亚洲AV乱码久久精品蜜桃| 久久天堂AV综合合色蜜桃网| 久久精品国产清高在天天线| 国产Av激情久久无码天堂| 久久99国产精品久久久| 久久不见久久见免费影院www日本| 久久e热在这里只有国产中文精品99| 久久久久国产精品三级网| 亚洲国产精品无码久久| 99久久国产热无码精品免费久久久久| 久久国产精品久久| 中文字幕久久精品| 中文精品久久久久国产网址| 一本色道久久88精品综合| 日日狠狠久久偷偷色综合免费| 国产亚洲精品自在久久| 久久婷婷是五月综合色狠狠| 秋霞久久国产精品电影院|