亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

POJ3348-凸包

2019-11-14 10:30:40
字體:
來源:轉載
供稿:網友

題意:一片草地上有n課樹,現在你想用繩子圈出一個盡可能大的面積出來養牛。已知每只牛需要50單位的面積,問最多能養幾只牛。

1.按極角排序。

#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>using namespace std;int n,stack[10010],top;const int maxn = 1e6+10;const double eps = 1e-8;struct Tpoint{ double x; double y;}list[10010];;int dblcmp(double p){ if(fabs(p)<eps) return 0; return p>0?1:-1;}double dist(Tpoint a, Tpoint b){ return sqrt((a.x-b.x)*(a.x-b.x) + (a.y-b.y)*(a.y-b.y));}double Cross(Tpoint p0, Tpoint p1, Tpoint p2) { return (p1.x-p0.x)*(p2.y-p0.y)-(p1.y-p0.y)*(p2.x-p0.x);}bool cmp(Tpoint p1, Tpoint p2){ double temp = Cross(list[0],p1,p2); int tt = dblcmp(temp); if(!tt) return dist(list[0],p1) < dist (list[0],p2); return tt>0;}void Graham(){ Tpoint p0 = list[0]; int k = 0; for(int i=1;i<n;i++){ if(p0.y>list[i].y || (p0.y==list[i].y && p0.x>list[i].x)){ p0 = list[i]; k = i; } } swap(list[k], list[0]); sort(list+1, list+n, cmp); stack[0] = 0; stack[1] = 1; top = 1; for(int i=2;i<n;i++){ while( dblcmp(Cross(list[stack[top-1]], list[stack[top]],list[i])<0)){ top--; } stack[++top] = i; }}void init(){ for(int i=0 ; i < n ; i++ ) scanf("%lf%lf",&list[i].x,&list[i].y); memset(stack,0,sizeof(stack));}void sov(){ double area = 0; for (int i = 0; i <= top; i++) area +=fabs(Cross(list[stack[(i+1)%(top+1)]],list[stack[i]],list[stack[0]])); PRintf ("%d/n", (int)area/100);}int main(){ while(~scanf("%d",&n)){ if(n == 1||n == 2) { printf("0/n");continue;} init(); Graham(); sov(); }}

2.按x排序。(x相同按y排序)

從小到大遍歷,走到最大是一半的凸包,然后從大到小在走一遍,另半個凸包

#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <cmath>using namespace std;int n,stack[10010],top;const int maxn = 1e6+10;const double eps = 1e-8;struct Tpoint{ double x; double y;}list[10010];;int dblcmp(double p){ if(fabs(p)<eps) return 0; return p>0?1:-1;}double Cross(Tpoint p0, Tpoint p1, Tpoint p2) { return (p1.x-p0.x)*(p2.y-p0.y)-(p1.y-p0.y)*(p2.x-p0.x);}bool cmp(Tpoint p1, Tpoint p2){ if(p1.y == p2.y) return p1.x < p2.x; return p1.y < p2.y;}void Graham(){ top = 1; for(int i = 0 ; i <= 2; i++) stack[i] = i; for(int i=2;i<n;i++){ while(top && dblcmp(Cross(list[stack[top-1]], list[stack[top]],list[i])<0)){ top--; } stack[++top] = i; } int len = top; stack[++top] = n-2; for(int i = n-3; i >= 0 ; i--){ while(top!=len && dblcmp(Cross(list[stack[top-1]], list[stack[top]],list[i])<0)) top--; stack[++top] = i; }}void init(){ for(int i=0 ; i < n ; i++ ) scanf("%lf%lf",&list[i].x,&list[i].y); memset(stack,0,sizeof(stack)); sort(list, list+n, cmp);}void sov(){ double area = 0; for (int i = 0; i <= top; i++) area +=fabs(Cross(list[stack[(i+1)%(top+1)]],list[stack[i]],list[stack[0]])); printf ("%d/n", (int)area/100);}int main(){ while(~scanf("%d",&n)){ if(n == 1||n == 2) { printf("0/n");continue;} init(); Graham(); sov(); }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色噜噜久久综合伊人一本| 国产精品极品美女在线观看免费| 日本一区二区三区四区视频| 成人中文字幕+乱码+中文字幕| 欧美孕妇孕交黑巨大网站| 亚洲日本中文字幕免费在线不卡| 97在线视频一区| 成人福利在线观看| 色噜噜狠狠色综合网图区| 成人黄色av播放免费| 亚洲综合大片69999| 欧美高清电影在线看| 亚洲精品国产欧美| 日韩在线观看成人| 在线视频免费一区二区| 久久99久国产精品黄毛片入口| 欧美在线一级视频| 国产婷婷成人久久av免费高清| 国产日韩精品电影| 欧美精品久久久久久久久| 日本高清视频一区| 不卡中文字幕av| 欧美亚洲另类视频| 日韩视频在线一区| 久久精品国产欧美激情| 成人精品久久av网站| 亚洲人成电影网站色www| 久久久999精品视频| 国产精品亚洲网站| 亚洲成人网在线观看| 国产精品大片wwwwww| 日韩最新中文字幕电影免费看| 91久久久久久| 成人国产在线视频| 日韩av网站电影| 久久久免费精品视频| 亚洲专区中文字幕| 91精品国产亚洲| 欧美日韩一区二区在线播放| 91精品视频网站| 国内揄拍国内精品| 亚洲最大的免费| 午夜美女久久久久爽久久| 欧美电影免费在线观看| 日韩中文字幕国产精品| 欧美性猛交xxxx黑人猛交| 在线观看国产精品日韩av| 欧美国产视频一区二区| 成人做爰www免费看视频网站| 国自在线精品视频| 久久免费视频网| 亚洲最大的av网站| 欧美在线不卡区| 亚洲色图欧美制服丝袜另类第一页| 久久综合久久美利坚合众国| 中文字幕亚洲无线码a| 久久久久免费精品国产| 欧美成人一区二区三区电影| 国内精品小视频在线观看| 亚洲天堂第一页| 亚洲成av人片在线观看香蕉| 国产国语videosex另类| 91在线视频一区| 精品一区电影国产| 久久亚洲影音av资源网| 91影视免费在线观看| 久久久免费精品| 国产综合在线看| 日本欧美爱爱爱| 亚洲大尺度美女在线| 91视频九色网站| 国产精品久久久久久久久久尿| 亚洲综合国产精品| 成人春色激情网| 亚洲成人教育av| 国产视频亚洲精品| 国产精品福利在线观看| 欧美日韩国产专区| 亚洲精品视频免费| 自拍偷拍亚洲欧美| 一区二区三区视频免费| 亚洲欧洲高清在线| 日韩精品免费观看| 中文字幕自拍vr一区二区三区| 亚洲国产精品人久久电影| 日韩中文字幕网站| 亚洲影院色无极综合| 亚洲无av在线中文字幕| 欧美有码在线视频| 91精品久久久久久久久青青| 日韩高清电影免费观看完整版| 久久亚洲春色中文字幕| 日韩高清电影免费观看完整版| 永久免费精品影视网站| 在线观看中文字幕亚洲| 成人字幕网zmw| 日本三级韩国三级久久| 日韩av电影手机在线| 亚洲欧美国产视频| 欧美电影免费观看大全| 日韩在线视频网| 日韩欧美在线观看视频| 国产精品成人播放| 日本精品免费观看| 日本久久久久久久久久久| 久久久99久久精品女同性| 精品国产乱码久久久久酒店| 欧美电影免费观看大全| 欧美日韩在线视频一区| 久操成人在线视频| 精品国产一区二区三区久久狼5月| 国产精自产拍久久久久久蜜| 国产在线精品自拍| 日韩在线精品一区| 日韩视频免费观看| 18久久久久久| 国产一区二区精品丝袜| 日韩av最新在线观看| 欧美黄色片免费观看| 夜夜嗨av色一区二区不卡| 456国产精品| 91网站在线看| 欧美性猛交xxxx免费看漫画| 国内精品久久久久影院优| 91高清视频在线免费观看| 色久欧美在线视频观看| 日韩激情av在线播放| 综合国产在线观看| 亚洲va久久久噜噜噜| 国产精品久久久久9999| 精品久久久久久国产| 亚洲高清一区二| 91精品国产色综合久久不卡98口| 日韩国产中文字幕| 亚洲毛片一区二区| 亚洲国产精品小视频| 国产成人一区二| 欧美激情一级精品国产| xxxxx91麻豆| 91国语精品自产拍在线观看性色| 91av国产在线| 欧美视频免费在线| 亚洲人精品午夜在线观看| 亚洲精品午夜精品| 国产精品国产三级国产专播精品人| 国产成人精品电影| 久久伊人精品一区二区三区| 97国产suv精品一区二区62| 日日狠狠久久偷偷四色综合免费| 国产精品精品久久久| 亚洲男人av电影| 北条麻妃99精品青青久久| 色婷婷**av毛片一区| 色狠狠av一区二区三区香蕉蜜桃| 97视频在线免费观看| 欧美日韩午夜剧场| 日韩av电影中文字幕| 欧美大片免费观看在线观看网站推荐| 91在线免费观看网站| 亚洲欧美日韩中文在线制服| 日韩精品电影网| 日韩欧美在线视频日韩欧美在线视频| 国产精品男人的天堂| 国产成人一区二区三区电影|