青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

應用平面圖的歐拉定理:V + F - E = 2
兩兩線段求交,得到交點數(shù) V,然后判斷每個交點落在幾條邊上,如果一個點在一條邊上,這條邊就分裂成兩條邊,邊數(shù)加 1。這樣得到邊數(shù) E。最后直接用歐拉定理解得 F。


/*************************************************************************
Author: WHU_GCC
Created Time: 2007-8-20 12:52:55
File Name: pku2284.cpp
Description: 
***********************************************************************
*/

#include 
<iostream>
#include 
<cmath>
using namespace std;
#define out(x) (cout<<#x<<": "<<x<<endl)
const int maxint=0x7FFFFFFF;
typedef 
long long int64;
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;}

const double INF = 1e200;
const double EP = 1e-10;

struct point_t
{
    
double x, y;
    point_t(
double a = 0double b = 0)
    
{
        x 
= a;
        y 
= b;
    }

}
;

struct lineseg_t
{
    point_t s, e;
    lineseg_t (point_t a, point_t b)
    
{
        s 
= a;
        e 
= b;
    }

    lineseg_t()
    
{}
}
;

struct line_t
{
    
double a, b, c;
}
;

bool operator <(point_t p1, point_t p2)
{
    
return p1.x < p2.x || p1.x == p2.x && p1.y < p2.y;
}



bool operator ==(point_t p1, point_t p2)
{
    
return abs(p1.x - p2.x) < EP && abs(p1.y - p2.y) < EP;
}


double multiply(point_t sp, point_t ep, point_t op)
{
    
return (sp.x - op.x) * (ep.y - op.y) - (ep.x - op.x) * (sp.y - op.y);
}


bool online(lineseg_t l, point_t p)
{
    
return abs(multiply(l.e, p, l.s)) < EP && (p.x - l.s.x) * (p.x - l.e.x) < EP && (p.y - l.s.y) * (p.y - l.e.y) < EP;
}


bool lineintersect(line_t l1, line_t l2, point_t &p)
{
    
double d = l1.a * l2.b - l2.a * l1.b;
    
if (abs(d) < EP) return false;
    p.x 
= (l2.c * l1.b - l1.c * l2.b) / d;
    p.y 
= (l2.a * l1.c - l1.a * l2.c) / d;
    
return true;
}


line_t makeline(point_t p1, point_t p2)
{
    line_t t1;
    
int sign = 1;
    t1.a 
= p2.y - p1.y;
    
if (t1.a < 0)
    
{
        sign 
= -1;
        t1.a 
= sign * t1.a;
    }

    t1.b 
= sign * (p1.x - p2.x);
    t1.c 
= sign * (p1.y * p2.x - p1.x * p2.y);
    
return t1;
}


bool intersection(lineseg_t l1, lineseg_t l2, point_t &p)
{
    line_t ll1, ll2;
    ll1 
= makeline(l1.s, l1.e);
    ll2 
= makeline(l2.s, l2.e);
    
if (lineintersect(ll1, ll2, p))
        
return online(l1, p) && online(l2, p);
    
else return false;
}


const int maxn = 100000;
point_t p[maxn];
int n;

point_t inter[maxn];
int cnt_inter;

int main()
{
    
int ca = 1;
    
while (scanf("%d"&n), n != 0)
    
{
        
for (int i = 0; i < n; i++)
            scanf(
"%lf%lf"&p[i].x, &p[i].y);
        
        cnt_inter 
= 0;
        
for (int i = 0; i < n; i++)
            
for (int j = 0; j < n; j++)
            
{
                lineseg_t l1(p[i], p[(i 
+ 1% n]), l2(p[j], p[(j + 1% n]);
                point_t p;
                
if (intersection(l1, l2, p))
                    inter[cnt_inter
++= p;
            }

        sort(inter, inter 
+ cnt_inter);
        cnt_inter 
= unique(inter, inter + cnt_inter) - inter;
        
        
int e = 0;
        
for (int i = 0; i < cnt_inter; i++)
        
{
            
for (int j = 0; j < n; j++)
            
{
                lineseg_t t(p[j], p[(j 
+ 1% n]);
                
if (online(t, inter[i]) && !(t.s == inter[i]))
                    e
++;
            }

        }

        printf(
"Case %d: There are %d pieces.\n", ca++, e + 2 - cnt_inter);
    }

    
return 0;
}
posted on 2007-08-21 17:26 Felicia 閱讀(365) 評論(0)  編輯 收藏 引用 所屬分類: 計算幾何
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            99热这里只有精品8| 久久久噜噜噜久噜久久| 欧美高清你懂得| 牛人盗摄一区二区三区视频| 依依成人综合视频| 欧美国产一区视频在线观看| 亚洲性感美女99在线| 亚洲欧洲在线观看| 欧美三级电影精品| 久久尤物电影视频在线观看| 一区二区三区日韩欧美精品| 卡通动漫国产精品| 亚洲欧美日韩中文视频| 亚洲精品一区二| 国产一区二区按摩在线观看| 欧美色中文字幕| 免费看亚洲片| 亚洲免费视频在线观看| 亚洲欧洲三级电影| av成人免费在线| 亚洲二区精品| 亚洲成人直播| 黄色成人免费观看| 国产精自产拍久久久久久| 欧美日产国产成人免费图片| 蜜臀久久久99精品久久久久久| 欧美在线91| 欧美一进一出视频| 中国女人久久久| 亚洲日韩成人| 亚洲精品老司机| 亚洲精品1区2区| 一区二区三区在线观看欧美| 国产网站欧美日韩免费精品在线观看 | 在线一区二区三区做爰视频网站| 精品99一区二区三区| 国产精品揄拍一区二区| 亚洲欧美日本国产专区一区| 99riav国产精品| 一区二区激情小说| 一区二区欧美精品| 亚洲夜晚福利在线观看| 亚洲一区美女视频在线观看免费| 在线一区观看| 亚洲一区二区三区在线看 | 欧美日韩国产综合久久| 99综合精品| 在线视频精品| 亚洲欧美在线播放| 久久不射中文字幕| 麻豆freexxxx性91精品| 一区二区毛片| 羞羞漫画18久久大片| 欧美一级理论性理论a| 久久国产一区| 久久综合中文字幕| 久久综合一区| 欧美乱妇高清无乱码| 国产精品久久久爽爽爽麻豆色哟哟| 欧美日韩一区二区三区| 国产精品亚洲第一区在线暖暖韩国| 国产午夜精品麻豆| 亚洲国产精品第一区二区三区| 日韩视频免费在线| 午夜精品视频在线观看一区二区| 久久久精品国产一区二区三区| 你懂的国产精品永久在线| 亚洲国产欧美一区二区三区丁香婷| 日韩一区二区精品视频| 久久不射网站| 欧美性大战xxxxx久久久| 国产一区二区三区奇米久涩| 亚洲精品综合精品自拍| 久久国产精品一区二区| 亚洲人午夜精品免费| 午夜精品久久久久久| 欧美成人a∨高清免费观看| 欧美午夜视频在线观看| 亚洲第一黄色网| 欧美一区1区三区3区公司| 亚洲综合电影一区二区三区| 噜噜噜噜噜久久久久久91| 欧美激情一区二区久久久| 欧美成人dvd在线视频| 快she精品国产999| 国产精品捆绑调教| 欧美午夜精品久久久久久孕妇| 欧美日韩你懂的| 国模吧视频一区| 欧美在线观看视频| 日韩亚洲欧美一区| 国产精品久久亚洲7777| 亚洲综合日韩中文字幕v在线| 一本久道综合久久精品| 欧美午夜免费影院| 久久免费视频在线| 欧美激情1区2区3区| 亚洲欧美激情一区二区| 久久成人一区| 国产精品99久久久久久www| 午夜在线观看欧美| 亚洲精选成人| 欧美一级播放| 一个色综合av| 鲁大师成人一区二区三区| 午夜久久美女| 欧美精品aa| 久久躁日日躁aaaaxxxx| 欧美性理论片在线观看片免费| 老司机一区二区三区| 欧美视频中文字幕在线| 欧美xxx成人| 国产主播一区| 亚洲在线视频| 亚洲神马久久| 欧美精品二区| 欧美国产日韩亚洲一区| 国产一区二区电影在线观看| 日韩一级精品| 亚洲美女区一区| 久热精品视频在线观看一区| 久久www免费人成看片高清 | 亚洲第一页中文字幕| 亚洲一区二区精品视频| 一区二区三区免费看| 免费在线欧美视频| 麻豆精品传媒视频| 国产在线精品一区二区夜色| 亚洲调教视频在线观看| 亚洲综合不卡| 国产精品xvideos88| 日韩视频精品| 国产精品99久久久久久人| 欧美日韩国产成人高清视频| 亚洲国内自拍| 亚洲日本成人女熟在线观看| 老司机一区二区三区| 欧美freesex8一10精品| 亚洲国产成人tv| 欧美成人精精品一区二区频| 国产精品啊v在线| 久热精品视频在线| 欧美手机在线视频| 美日韩精品视频| 国产精品爱久久久久久久| 最新日韩精品| 狠狠色噜噜狠狠色综合久| 午夜日韩激情| 欧美在线观看你懂的| 国产日韩精品入口| 午夜精品视频在线| 麻豆精品精华液| 在线日韩欧美视频| 久久全国免费视频| 欧美国产乱视频| 亚洲免费成人av电影| 欧美日韩伊人| 欧美一级理论片| 欧美大片免费观看| 在线视频欧美一区| 国产伦精品一区二区三| 久久久久欧美精品| 日韩午夜视频在线观看| 翔田千里一区二区| 亚洲第一中文字幕| 欧美日韩国产成人在线免费| 亚洲一品av免费观看| 女女同性精品视频| 亚洲视频1区| 国产亚洲精品综合一区91| 免费成人av| 亚洲综合电影一区二区三区| 蜜臀99久久精品久久久久久软件| 亚洲毛片视频| 国产欧美一区视频| 免费在线国产精品| 亚洲免费视频一区二区| 欧美凹凸一区二区三区视频| 夜夜爽99久久国产综合精品女不卡| 欧美日韩国产成人精品| 欧美专区在线观看一区| 99精品久久| 欧美激情乱人伦| 久久精品国产77777蜜臀| 999在线观看精品免费不卡网站| 国产欧美视频一区二区三区| 欧美激情精品久久久久久大尺度 | 亚洲黄色小视频| 欧美一区二区三区成人| 亚洲人在线视频| 国产在线观看一区| 欧美日韩999| 久久久亚洲欧洲日产国码αv| 亚洲美女啪啪| 欧美成人亚洲| 久久裸体视频| 欧美一区二区性| 亚洲视频免费| 在线一区观看| 亚洲精选大片|