• <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>


            May the force be with you!
            posts - 52,  comments - 33,  trackbacks - 0

            在discuss的提示下比較輕松的切了這道題,了解了pick定理......

            要點:   (1)   pick定理:
                                給定頂點座標均是整點(或正方形格點)的簡單多邊形皮克定理說明了其面積A和內部格點數目i、邊上格點數目b的關系:A = i + b/2 - 1;
                            定理轉載鏈接:Pick定理
                     (2)   在兩點(x1,y1),(x2,y2)連線之間的整點個數(包含一個端點)為:gcd(|x1-x2|,|y1-y2|);
                     (3)   求三角形面積用叉乘
                                                                      2007.10.26
                                                                      Simbaforrest
             1 #include<stdio.h>
             2 #include<math.h>
             3 typedef struct tagPoint
             4 {
             5     int x,y;
             6 }Point;
             7 
             8 int double_area(Point a,Point b,Point c)
             9 {
            10     return (b.x-a.x)*(c.y-a.y)-(b.y-a.y)*(c.x-a.x);
            11 }
            12 
            13 int gcd(int a,int b)
            14 {
            15     if(b==0)
            16         return a;
            17     return gcd(b,a%b);
            18 }
            19 
            20 int edgenum(Point a,Point b)
            21 {
            22     int dx,dy;
            23     dx=a.x-b.x;
            24     if(dx<0)
            25         dx=-dx;
            26     dy=a.y-b.y;
            27     if(dy<0)
            28         dy=-dy;
            29     return gcd(dx,dy);
            30 }
            31 
            32 int main()
            33 {
            34     int ab,bc,ca;
            35     int edge,area,in;
            36     Point a,b,c;
            37     while(scanf("%d%d%d%d%d%d",&a.x,&a.y,&b.x,&b.y,&c.x,&c.y),a.x||a.y||b.x||b.y||c.x||c.y)
            38     {
            39         area=double_area(a,b,c);
            40         if(area<0)
            41             area=-area;
            42         ab=edgenum(a,b);
            43         bc=edgenum(b,c);
            44         ca=edgenum(c,a);
            45         edge=ab+bc+ca;
            46         in=(area-edge+2)/2;
            47         printf("%d\n",in);
            48     }
            49     return 0;
            50 }
            51 


            posted on 2007-10-26 17:45 R2 閱讀(559) 評論(0)  編輯 收藏 引用
            你是第 free hit counter 位訪客




            <2007年10月>
            30123456
            78910111213
            14151617181920
            21222324252627
            28293031123
            45678910

            常用鏈接

            留言簿(4)

            隨筆分類(54)

            隨筆檔案(52)

            文章檔案(1)

            ACM/ICPC

            技術綜合

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 63718
            • 排名 - 357

            最新評論

            閱讀排行榜

            評論排行榜

            久久久婷婷五月亚洲97号色| 久久久国产精品福利免费| 色综合久久中文字幕综合网| 无码精品久久久天天影视| 色综合久久中文字幕无码| 久久精品国产免费| 久久久久久国产精品无码下载| 国产精品狼人久久久久影院| 久久国内免费视频| www.久久热| 伊人热热久久原色播放www| 97久久超碰国产精品2021| 欧美一级久久久久久久大| 国产精品视频久久久| 色天使久久综合网天天| 国产毛片久久久久久国产毛片| 久久精品国产男包| 久久午夜福利电影| 久久99中文字幕久久| 无码人妻久久一区二区三区免费| 久久91这里精品国产2020| 国产一区二区三区久久| 亚洲欧美伊人久久综合一区二区| 欧美激情精品久久久久久| 国产精品久久久久久搜索| 久久综合给久久狠狠97色| 中文字幕精品无码久久久久久3D日动漫| 丁香狠狠色婷婷久久综合| 无码国内精品久久人妻蜜桃| 久久综合九色综合网站| 亚洲?V乱码久久精品蜜桃 | 久久久久中文字幕| 麻豆一区二区99久久久久| 久久综合亚洲色一区二区三区| 亚洲国产成人精品无码久久久久久综合 | 国产一区二区久久久| 女同久久| 久久人人爽人人爽人人片AV不| 伊人久久亚洲综合影院| 久久久久久久女国产乱让韩| 久久精品国产免费观看三人同眠|