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

            技術綜合

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 63692
            • 排名 - 358

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲va国产va天堂va久久| 久久精品人成免费| 国产精品久久久福利| 国产亚洲精久久久久久无码| 久久777国产线看观看精品| 国产精品欧美亚洲韩国日本久久| 久久精品一区二区三区不卡| 国内精品久久久久久久亚洲| 综合久久一区二区三区| 国产产无码乱码精品久久鸭| 精品久久综合1区2区3区激情| 国产成人久久精品一区二区三区| 久久天天躁狠狠躁夜夜avapp| 国产精品无码久久综合网| 亚洲中文字幕无码一久久区| 精品久久久久中文字| 无码人妻精品一区二区三区久久 | 国产精品女同一区二区久久| 理论片午午伦夜理片久久 | 武侠古典久久婷婷狼人伊人| 日韩人妻无码精品久久久不卡 | 色综合久久综合中文综合网| 一级做a爰片久久毛片人呢| 亚洲中文字幕无码一久久区| 蜜桃麻豆www久久国产精品| 久久青草国产精品一区| 久久国产精品无码HDAV| 色综合久久久久久久久五月| 亚洲国产精品狼友中文久久久| 国产 亚洲 欧美 另类 久久| 国产一区二区三区久久| 久久亚洲精品人成综合网| 久久久亚洲裙底偷窥综合| 青青热久久国产久精品| 久久亚洲视频| 日产精品久久久久久久| 日韩精品无码久久一区二区三| 久久se精品一区精品二区国产| 色综合久久中文色婷婷| 欧美一区二区精品久久| 99久久精品免费看国产|