• <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>
            Pick公式的應用。先介紹一下Pick公式:

            = e / 2 + i - 1
            a為多邊形(頂點都在格點上)面積,e為多邊形邊上的格點數,i為多邊形內部的格點數。

            題目給出三點坐標,邊上的格點數可用gcd求得,剩下的事就是解方程了。


            /*************************************************************************
            Author: WHU_GCC
            Created Time: 2007-9-18 21:19:33
            File Name: pku2954.cpp
            Description: 
            ***********************************************************************
            */

            #include 
            <iostream>
            using namespace std;

            #define out(x) (cout << #x << ": " << x << endl)
            typedef 
            long long int64;
            const int maxint = 0x7FFFFFFF;
            const int64 maxint64 = 0x7FFFFFFFFFFFFFFFLL;
            template 
            <class T> void show(T a, int n) for (int i = 0; i < n; ++i) cout << a[i] << ' '; cout << endl; }
            template 
            <class T> void show(T a, int r, int l) for (int i = 0; i < r; ++i) show(a[i], l); cout << endl; }

            int gcd(int a, int b)
            {
                
            if (b == 0)
                    
            return a;
                
            else
                    
            return gcd(b, a % b);
            }


            int main()
            {
                
            int ax, ay, bx, by, cx, cy;
                
            while (scanf("%d%d%d%d%d%d"&ax, &ay, &bx, &by, &cx, &cy), !(ax == 0 && ay == 0 && bx == 0 && by == 0 && cx == 0 && cy == 0))
                
            {
                    
            int tax = bx - cx, tay = by - cy;
                    
            int tbx = cx - ax, tby = cy - ay;
                    
            int tcx = ax - bx, tcy = ay - by;
                    
            int b = gcd(abs(tcx), abs(tcy)) + gcd(abs(tax), abs(tay)) + gcd(abs(tbx), abs(tby));
                    
            int a = abs(tax * tby - tay * tbx);
                    printf(
            "%d\n", (a + 2 - b) / 2);
                }

                
            return 0;
            }
            posted on 2007-09-18 21:59 Felicia 閱讀(440) 評論(0)  編輯 收藏 引用 所屬分類: 計算幾何
             
            久久99久久99精品免视看动漫| 久久久综合九色合综国产| 精品久久人人妻人人做精品| 嫩草影院久久国产精品| 办公室久久精品| 成人久久免费网站| 国产精品欧美久久久久无广告| 亚洲国产精品无码久久青草 | 亚洲天堂久久精品| 久久亚洲精品成人无码网站 | 国产69精品久久久久9999APGF| 99精品国产在热久久无毒不卡| 88久久精品无码一区二区毛片| 久久亚洲AV无码精品色午夜麻豆| 国产成人久久精品区一区二区| 四虎国产精品成人免费久久| 97久久久精品综合88久久| 亚洲?V乱码久久精品蜜桃 | 久久精品国产72国产精福利| 亚洲国产精品无码久久一区二区| 大美女久久久久久j久久| 久久精品无码午夜福利理论片| 色婷婷综合久久久久中文字幕| 久久国产精品-久久精品| 久久精品成人欧美大片| 久久人搡人人玩人妻精品首页| 婷婷久久综合九色综合98| 久久国产色AV免费观看| 久久久久久久久66精品片| 精品人妻伦一二三区久久| 久久99中文字幕久久| 久久ZYZ资源站无码中文动漫| 日本五月天婷久久网站| 久久这里只精品99re66| 久久综合亚洲鲁鲁五月天| 久久中文字幕无码专区| 久久久WWW免费人成精品| 久久乐国产精品亚洲综合| 久久久久人妻一区精品| 午夜视频久久久久一区| 久久精品亚洲欧美日韩久久|