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

學習心得(code)

superlong@CoreCoder

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  74 Posts :: 0 Stories :: 5 Comments :: 0 Trackbacks

公告

文字可能放在http://blog.csdn.net/superlong100,此處存放代碼

常用鏈接

留言簿(4)

我參與的團隊

搜索

  •  

最新隨筆

最新評論

  • 1.?re: Poj 1279
  • 對于一個凹多邊形用叉積計算面積 后能根據結果的正負來判斷給的點集的時針方向?
  • --bsshanghai
  • 2.?re: Poj 3691
  • 你寫的這個get_fail() 好像并是真正的get_fail,也是說fail指向的串并不是當前結點的子串。為什么要這樣弄呢?
  • --acmer1183
  • 3.?re: HDU2295[未登錄]
  • 這個是IDA* 也就是迭代加深@ylfdrib
  • --superlong
  • 4.?re: HDU2295
  • 評論內容較長,點擊標題查看
  • --ylfdrib
  • 5.?re: HOJ 11482
  • 呵呵..把代碼發在這里很不錯..以后我也試試...百度的編輯器太爛了....
  • --csuft1

閱讀排行榜

評論排行榜

最遠點對問題

    類似于“最近點對問題”,這個問題也可以用枚舉的方法求解,時間復雜度O(n^2)。假設平面上有n個點,那么這一對最遠點必然存在于這n個點所構成的一 個凸包上,為了降低時間復雜度,可以先將這n個點按極角排序,然后利用Graham_scan法求出這個凸包,再枚舉凸包上的所有頂點(也可以用旋轉卡 殼)求出這個最遠距離,時間復雜度O(nlogn)。再最壞的情況下,如果這n個點本身就構成了一個凸包,時間復雜度為O(n^2)。該算法的平均復雜度 為O(nlogn)。
#include <cstdio>
#include 
<cstring>
#include 
<cmath>
#include 
<cstdlib>

const int MAXN = 100001;
const double eps = 1e-6;
struct point{
    
double x,y;
}p[MAXN],h[MAXN];

inline 
double distance(const point &p1,const point &p2){
    
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
}
inline 
double multiply(const point &sp,const point &ep,const point &op){
      
return ((sp.x-op.x)*(ep.y-op.y)-(ep.x-op.x)*(sp.y-op.y));
}
int cmp(const void *a,const void *b){
    point 
*p1 = (point *)a;
    point 
*p2 = (point *)b;
    
double t = (p1->y-p[0].y)*(p2->x-p[0].x)-(p2->y-p[0].y)*(p1->x-p[0].x);
    
if(t>eps) return 1;
    
else if(fabs(t)<=eps) return 0;
    
else return -1;
}
void anglesort(point p[],int n){
    
int i,k=0;
    point temp;
    
for(i=1;i<n;i++)
        
if(p[i].x<p[k].x || (p[i].x==p[k].x) && (p[i].y<p[k].y))
            k
=i;
    temp
=p[0],p[0]=p[k],p[k]=temp;
    qsort(p
+1,n-1,sizeof(point),cmp);
}
void Graham_scan(point p[],point ch[],int n,int &len){
    
int i,top=2;
    anglesort(p,n);
    
if(n<3){
        
for(i=0,len=n;i<n;i++) ch[i]=p[i];
        
return;
    }
    ch[
0]=p[0],ch[1]=p[1],ch[2]=p[2];
    
for(i=3;i<n;i++){
        
while(multiply(p[i],ch[top],ch[top-1])>=0) top--;
        ch[
++top]=p[i];
    }
    len
=top+1;
}
int main(){
    
int i,j,n,len;
    
double d,ans;
    
while(scanf("%d",&n),n){
        
for(i=0;i<n;i++) scanf("%lf %lf",&p[i].x,&p[i].y);
        Graham_scan(p,h,n,len);
        
for(ans=i=0;i<len;i++)
            
for(j=i+1;j<len;j++){
                d
=distance(h[i],h[j]);
                
if(d>ans) ans=d;
            }
        printf(
"%.2lf\n",ans);
    }
    
return 0;
}


接下來所謂旋轉卡殼法(類似求數組中最長子段的和):
int main(){
    
while(~scanf("%d"&n))    {
        
for(int i = 0; i < n; i ++)
            p[i].read();
        
int top = 0;
        tubao(p, id, n, top);
        
int area, area2, i, j, k, t, maxx = 0;
        
for(i = 0, k = 2; i < top; i ++){
            j 
= (i + 1% top;
            t 
= (k + 1% top;
            area 
= fabs(xmul(p[id[i]], p[id[k]], p[id[j]]));
            area2 
= fabs(xmul(p[id[i]], p[id[t]], p[id[j]]));
            
while(area < area2){    
                area 
= area2;
                k 
= (k + 1% top;
                t 
= (k + 1% top;
                area2 
= fabs(xmul(p[id[i]], p[id[t]], p[id[j]]));
                maxx 
= max(maxx, max( dist(p[id[i]], p[id[k]]), dist(p[id[i]], p[id[t]]) ));
            }
        }
        
if(maxx != 0)
            printf(
"%lf\n", maxx);
        
else
            printf(
"%lf\n", dist(p[id[0]], p[id[top-1]]));

    }

}

posted on 2009-08-05 11:59 superlong 閱讀(709) 評論(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>
            国产一区二区电影在线观看| 欧美顶级少妇做爰| 午夜精品av| 亚洲黄色av| 亚洲毛片网站| 欧美成熟视频| 亚洲激情在线| 欧美国产精品专区| 免费成人高清视频| 伊人久久大香线蕉综合热线| 久久久久久亚洲精品杨幂换脸| 一本大道av伊人久久综合| 欧美激情在线免费观看| 亚洲精品久久久久久久久| 欧美激情一区二区久久久| 另类图片综合电影| 一区二区三区在线视频免费观看| 欧美中文在线字幕| 欧美一区二区黄色| 一区二区在线视频观看| 欧美成人国产| 欧美精品导航| 亚洲免费一在线| 欧美亚洲尤物久久| 精品1区2区3区4区| 欧美大成色www永久网站婷| 久色婷婷小香蕉久久| 亚洲日韩欧美视频一区| 日韩视频一区| 国产偷国产偷亚洲高清97cao| 久久久久成人精品免费播放动漫| 久久精品免视看| 日韩午夜精品| 亚洲欧美成人精品| 在线观看日韩av| 亚洲精选视频免费看| 国产精品大片| 久久一本综合频道| 欧美精品aa| 久久成年人视频| 免费视频一区二区三区在线观看| 在线亚洲欧美视频| 欧美综合77777色婷婷| 日韩天堂av| 欧美亚洲专区| aa级大片欧美| 久久精品国产91精品亚洲| 亚洲精品资源美女情侣酒店| 亚洲欧美国产精品专区久久| 亚洲国产导航| 亚洲男人第一网站| 亚洲欧洲精品一区二区三区不卡 | 亚洲午夜伦理| 一区在线播放视频| 99在线|亚洲一区二区| 国内综合精品午夜久久资源| 亚洲精品1区| 欧美日韩一区在线播放| 激情久久婷婷| 日韩一级精品视频在线观看| 国内精品视频一区| 亚洲欧洲在线一区| 国内外成人在线视频| 99re6热在线精品视频播放速度| 国产一区二区无遮挡| 亚洲最新在线视频| 亚洲欧洲精品成人久久奇米网| 性亚洲最疯狂xxxx高清| 亚洲一区二区三区精品在线观看 | 欧美激情综合网| 久久精品久久99精品久久| 欧美激情按摩| 久久香蕉国产线看观看av| 国产精品啊啊啊| 亚洲精品韩国| 亚洲欧洲另类| 久久久久久久久久久久久9999| 欧美一区二区三区四区夜夜大片| 欧美日韩不卡合集视频| 欧美岛国在线观看| 狠狠色综合网站久久久久久久| 午夜久久黄色| 欧美专区在线观看一区| 国产精品男女猛烈高潮激情| 日韩视频在线你懂得| 一区二区欧美国产| 欧美日韩亚洲在线| aa级大片欧美三级| 亚洲主播在线观看| 欧美日韩免费看| 一卡二卡3卡四卡高清精品视频| 99re66热这里只有精品3直播 | 亚洲精品一区二区三| 老司机免费视频一区二区| 欧美aa在线视频| 亚洲国产精品专区久久| 久久婷婷综合激情| 欧美福利一区二区| 亚洲精品偷拍| 欧美日韩三区四区| 亚洲视频在线看| 亚洲欧美成人| 国产区精品视频| 久久精品日产第一区二区| 久久久久久一区二区三区| 国产综合久久久久久| 欧美中文字幕| 欧美激情亚洲另类| 一区二区不卡在线视频 午夜欧美不卡在| 牛牛国产精品| 亚洲精品欧美日韩| 亚洲欧美在线观看| 黄色精品网站| 欧美高清在线视频| 在线视频精品| 久久琪琪电影院| 亚洲美女少妇无套啪啪呻吟| 欧美午夜在线观看| 久久精品视频99| 亚洲毛片一区二区| 久久久综合网站| 亚洲区一区二区三区| 国产精品盗摄久久久| 久久乐国产精品| 欧美亚洲网站| 极品少妇一区二区三区| 欧美剧在线观看| 午夜在线一区二区| 亚洲国内欧美| 久久激情五月激情| 日韩视频一区二区三区在线播放免费观看 | 欧美主播一区二区三区美女 久久精品人| 国产综合色一区二区三区| 欧美电影免费观看大全| 亚洲与欧洲av电影| 亚洲国产老妈| 欧美专区日韩视频| 夜夜嗨av色一区二区不卡| 国产日韩欧美一区二区三区在线观看| 裸体素人女欧美日韩| 香港久久久电影| 亚洲精品日产精品乱码不卡| 久久精品一区二区国产| 在线一区二区三区做爰视频网站 | 欧美黄色一区二区| 欧美一区二区三区四区高清| 日韩一级片网址| 红杏aⅴ成人免费视频| 国产精品丝袜91| 欧美日韩xxxxx| 免费成人在线观看视频| 久久国产日韩欧美| 午夜精品视频在线观看| 99视频精品在线| 91久久精品国产91性色tv| 免费av成人在线| 久久久久久黄| 欧美一区观看| 亚洲欧美日韩国产精品| 一区二区国产在线观看| 亚洲国产一区二区三区a毛片| 国产欧美精品一区二区色综合| 欧美日韩一二三四五区| 欧美精品成人一区二区在线观看| 久久女同精品一区二区| 久久久国产视频91| 午夜精品区一区二区三| 亚洲专区欧美专区| 亚洲在线免费| 亚洲欧美中文另类| 亚洲一区二区在| 亚洲欧美日韩国产综合精品二区| 一本久久综合亚洲鲁鲁| 一本色道久久综合亚洲精品高清| 亚洲日韩成人| 日韩视频一区二区在线观看| 99re6热在线精品视频播放速度| 亚洲激情网站| 亚洲精品国精品久久99热| 亚洲高清视频的网址| 亚洲黑丝在线| 亚洲精品在线观看免费| 亚洲精品中文字幕女同| 亚洲精品在线免费| 夜色激情一区二区| 亚洲视频日本| 欧美亚洲日本一区| 久久国产精品久久国产精品| 久久亚洲精品一区二区| 欧美成人首页| 欧美精品一线| 国产精品夫妻自拍| 久久九九免费| 欧美粗暴jizz性欧美20| 欧美国产日韩亚洲一区| 欧美日韩国产大片| 国产精品有限公司| 136国产福利精品导航| 亚洲精品免费电影| 亚洲影院色无极综合|