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

Uriel's Corner

Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
posts - 0, comments - 50, trackbacks - 0, articles - 594

POJ 1113 Wall---計(jì)算幾何

Posted on 2009-09-20 00:53 Uriel 閱讀(499) 評(píng)論(0)  編輯 收藏 引用 所屬分類: POJ 、計(jì)算幾何
簡(jiǎn)單凸包。。凸包周長(zhǎng)加半徑L圓的周長(zhǎng)。。
/*Problem: 1113  User: Uriel 
   Memory: 636K  Time: 47MS 
   Language: G++  Result: Accepted
*/
 

#include
<math.h>
#include
<stdio.h>
#include 
<stdlib.h>

#define eps 1e-8
#define PI 3.141592653589793
#define zero(x) (((x)>0?(x):-(x))<eps)

struct point{
    
double x,y;
}
;

point P[
3001],convex[3001];
double res;
int N,L;

//計(jì)算cross product (P1-P0)x(P2-P0)
double xmult(point p1,point p2,point p0){
    
return (p1.x-p0.x)*(p2.y-p0.y)-(p2.x-p0.x)*(p1.y-p0.y);
}

//graham算法順時(shí)針構(gòu)造包含所有共線點(diǎn)的凸包,O(nlogn)
point p1,p2;
int graham_cp(const void* a,const void* b){
    
double ret=xmult(*((point*)a),*((point*)b),p1);
    
return zero(ret)?(xmult(*((point*)a),*((point*)b),p2)>0?1:-1):(ret>0?1:-1);
}

void _graham(int n,point* p,int& s,point* ch){
    
int i,k=0;
    
for (p1=p2=p[0],i=1;i<n;p2.x+=p[i].x,p2.y+=p[i].y,i++)
        
if (p1.y-p[i].y>eps||(zero(p1.y-p[i].y)&&p1.x>p[i].x))
            p1
=p[k=i];
    p2.x
/=n,p2.y/=n;
    p[k]
=p[0],p[0]=p1;
    qsort(p
+1,n-1,sizeof(point),graham_cp);
    
for (ch[0]=p[0],ch[1]=p[1],ch[2]=p[2],s=i=3;i<n;ch[s++]=p[i++])
        
for (;s>2&&xmult(ch[s-2],p[i],ch[s-1])<-eps;s--);
}


//構(gòu)造凸包接口函數(shù),傳入原始點(diǎn)集大小n,點(diǎn)集p(p原有順序被打亂!)
//返回凸包大小,凸包的點(diǎn)在convex中
//參數(shù)maxsize為1包含共線點(diǎn),為0不包含共線點(diǎn),缺省為1
//參數(shù)clockwise為1順時(shí)針構(gòu)造,為0逆時(shí)針構(gòu)造,缺省為1
//在輸入僅有若干共線點(diǎn)時(shí)算法不穩(wěn)定,可能有此類情況請(qǐng)另行處理!
//不能去掉點(diǎn)集中重合的點(diǎn)
int graham(int n,point* p,point* convex,int maxsize=1,int dir=1){
    point
* temp=new point[n];
    
int s,i;
    _graham(n,p,s,temp);
    
for (convex[0]=temp[0],n=1,i=(dir?1:(s-1));dir?(i<s):i;i+=(dir?1:-1))
        
if (maxsize||!zero(xmult(temp[i-1],temp[i],temp[(i+1)%s])))
            convex[n
++]=temp[i];
    delete []temp;
    
return n;
}


double Dis(int a,int b)
{
    
return sqrt((convex[a].y-convex[b].y)*(convex[a].y-convex[b].y)+(convex[a].x-convex[b].x)*(convex[a].x-convex[b].x));
}


int main()
{
    scanf(
"%d %d",&N,&L);
    
for(int i=0;i<N;i++)
    
{
        scanf(
"%lf %lf",&P[i].x,&P[i].y);
    }

    
int M=graham(N,P,convex,1,1);
    res
=0;
    
for(int i=0;i<M-1;i++)
    
{
//        printf("*%.2f %.2f*\n",convex[i].x,convex[i].y);
        res+=Dis(i,i+1);
    }

    res
+=Dis(0,M-1);
    res
+=2*PI*L;
    printf(
"%.0f\n",res);
//    system("PAUSE");
    return 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>
            最新日韩在线视频| 欧美精品一区二区三区在线播放| 欧美一区二区视频97| 午夜精品视频在线观看一区二区| 亚洲天堂偷拍| 午夜在线精品偷拍| 欧美在线免费播放| 久久久久久久久久久久久女国产乱 | 尤物yw午夜国产精品视频明星| 韩国成人理伦片免费播放| 精品96久久久久久中文字幕无| 91久久中文| 亚洲图片欧洲图片日韩av| 午夜精品视频| 亚洲大片在线观看| 一本色道久久综合精品竹菊| 欧美成人一二三| 亚洲人成网站在线观看播放| 亚洲欧美一区二区原创| 欧美有码视频| 免费观看亚洲视频大全| 欧美视频在线一区二区三区| 国产在线观看一区| 亚洲视频一区在线观看| 久久精品综合| 亚洲黄色片网站| 亚洲欧美另类久久久精品2019| 久久野战av| 国产欧美亚洲视频| 一区二区三区精品在线| 久久久久国产精品人| 亚洲巨乳在线| 久久一区亚洲| 国产亚洲观看| 亚洲图中文字幕| 欧美国产日韩一区二区| 亚洲综合色在线| 欧美激情一二三区| 黄色影院成人| 久久精品国产在热久久| 亚洲网站在线| 欧美日韩视频在线一区二区| 亚洲韩国精品一区| 久久精品毛片| 亚洲主播在线| 国产精品久久二区二区| 一本色道久久综合狠狠躁篇的优点| 免费观看国产成人| 欧美专区在线| 国语自产精品视频在线看抢先版结局 | 欧美激情一区二区三区不卡| 亚洲男人的天堂在线| 欧美日韩性视频在线| 日韩视频一区二区三区| 欧美aⅴ99久久黑人专区| 久久电影一区| 国产最新精品精品你懂的| 久久国产乱子精品免费女| 亚洲一区视频| 一区免费在线| 狠狠色2019综合网| 久久av一区二区三区漫画| 夜夜爽www精品| 欧美日韩在线一区二区三区| 一本久道综合久久精品| 亚洲欧洲午夜| 欧美日韩国产色站一区二区三区| 亚洲精品欧洲精品| 亚洲精品免费观看| 欧美日韩亚洲高清一区二区| 国产精品99久久久久久www| 99精品视频一区二区三区| 国产精品av一区二区| 午夜在线视频观看日韩17c| 亚洲综合色激情五月| 国产揄拍国内精品对白| 免费成人黄色| 欧美日韩一区二区免费在线观看| 亚洲一区在线看| 久久成人亚洲| 亚洲片国产一区一级在线观看| 亚洲高清自拍| 欧美特黄一级大片| 久久九九久精品国产免费直播| 久久精品人人做人人综合| 在线成人免费观看| 亚洲精品国产精品国自产观看| 欧美日韩视频在线一区二区| 久久国产精品久久久久久| 久久精品青青大伊人av| 日韩亚洲综合在线| 亚洲欧美卡通另类91av| 在线不卡欧美| 一区二区三区精品国产| 国内精品视频久久| 亚洲精品之草原avav久久| 国产偷国产偷精品高清尤物| 免费日韩视频| 国产精品人人做人人爽人人添| 久久aⅴ国产紧身牛仔裤| 免费精品视频| 久久精品成人欧美大片古装| 欧美激情偷拍| 久久午夜精品一区二区| 国产精品高潮久久| 亚洲三级影片| 亚洲国产精品ⅴa在线观看| 日韩视频永久免费| 尤物在线观看一区| 亚洲综合日韩| 在线一区亚洲| 久热精品在线视频| 欧美在线免费观看视频| 欧美日韩国产成人在线91| 久久综合九色99| 国产精品久久久久aaaa| 亚洲国产精品高清久久久| 国产亚洲精品自拍| 亚洲一区二区三区在线观看视频| 最新亚洲电影| 久久久噜噜噜久噜久久| 久久成人免费网| 欧美性开放视频| 亚洲一级黄色| 欧美gay视频| 欧美成人一区二区三区片免费| 国产日韩在线视频| 中文国产一区| 亚洲午夜久久久| 欧美日韩一二三四五区| 亚洲国产欧美一区二区三区同亚洲| 极品尤物av久久免费看| 欧美永久精品| 久久深夜福利| 国产综合精品| 久久国产精品久久w女人spa| 欧美一区高清| 国产午夜精品全部视频在线播放 | 日韩午夜在线播放| 亚洲免费电影在线观看| 久久精品最新地址| 亚洲激情国产| 久久久精品动漫| 久久精品亚洲乱码伦伦中文| 国产精品女主播一区二区三区| 亚洲国产综合在线看不卡| 亚洲国产乱码最新视频| 老牛国产精品一区的观看方式| 狼狼综合久久久久综合网| 狠狠色狠狠色综合| 久久综合九色欧美综合狠狠| 欧美电影打屁股sp| 亚洲免费成人av电影| 欧美日韩亚洲一区二区三区在线| 一二三区精品福利视频| 午夜日韩福利| 激情视频亚洲| 欧美成人资源| 一区二区精品在线| 久久久久久高潮国产精品视| 国产综合久久| 欧美jizzhd精品欧美喷水| 亚洲美洲欧洲综合国产一区| 亚洲女同在线| 狠狠色狠狠色综合| 欧美久久久久久久久| 亚洲无线视频| 欧美成人激情视频免费观看| 一区二区三区偷拍| 国内精品国语自产拍在线观看| 裸体歌舞表演一区二区| av成人免费观看| 久久精品综合| 一本大道久久a久久精品综合| 国产麻豆精品视频| 免费视频一区| 欧美一区二区三区日韩视频| 亚洲激情一区二区三区| 欧美一区二区三区免费观看| 亚洲第一天堂av| 国产精品久久久久国产精品日日| 久久久久久色| 中日韩在线视频| 亚洲国产成人在线视频| 久久精品91| 亚洲一区二区三区在线看| 亚洲高清自拍| 国产在线国偷精品产拍免费yy| 欧美日韩精品二区| 久久婷婷av| 欧美一站二站| 亚洲免费在线看| 亚洲少妇在线| 黄色日韩在线| 国产女人aaa级久久久级| 欧美成人激情视频| 久久大逼视频| 午夜欧美精品| 亚洲欧美一区二区三区久久 | 免费久久99精品国产自|