设为首页 加入收藏

TOP

poj1113Wall 求凸包周长 Graham扫描法
2015-07-24 05:29:28 来源: 作者: 【 】 浏览:4
Tags:poj1113Wall 周长 Graham 扫描
#include
  
   
#include
   
     #include
    
      using namespace std; typedef pair
     
       ll; ll num,dot[1010]; int i; const double pi=3.1415926535898; ll operator -(ll a,ll b) { return make_pair(a.first-b.first,a.second-b.second); } bool cmp(ll a,ll b) { return (a.first!=b.first?a.first
      
       0:d2(a,dot[0])
       
        >num.first>>num.second; for(i=0;i
        
         >dot[i].first>>dot[i].second; } void work() { sort(dot,dot+num.first,cmp); sort(dot,dot+num.first,cmp1); ll box[1010]={dot[0],dot[1]}; int tail=1; for(i=2;i
         
          =0) box[++tail]=dot[i++]; else tail--; } double ans=d1(box[0],box[tail])+2*pi*num.second; for(i=0;i
          
           
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HDU 4864(多校)1004 Task 下一篇SGU 261. Discrete Roots (N次剩..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: