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

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

POJ3348-凸包

2019-11-14 09:43:48
字體:
來源:轉載
供稿:網友

題意:一片草地上有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(); }}
上一篇:在python中排序元組

下一篇:函數與數組

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美999| 亚洲女人被黑人巨大进入al| 欧美激情亚洲另类| 91免费福利视频| 日韩亚洲欧美中文在线| www.日本久久久久com.| 国产亚洲免费的视频看| 日韩在线视频观看| 久久精品国产视频| 国产啪精品视频网站| 国产精欧美一区二区三区| 日韩免费高清在线观看| 性欧美在线看片a免费观看| 亚洲第一免费网站| 另类专区欧美制服同性| 欧洲亚洲免费视频| 久久乐国产精品| 久久久久久午夜| 91网站免费看| 色妞在线综合亚洲欧美| 欧美激情一区二区三区在线视频观看| 久久久99久久精品女同性| 欧美极品欧美精品欧美视频| 欧美体内谢she精2性欧美| 日韩电影第一页| 国产精品中文字幕在线观看| 国产精品美女视频网站| 久久久精品视频在线观看| 精品免费在线观看| 欧美一级淫片aaaaaaa视频| 国产精品 欧美在线| 亚洲视频在线播放| 成人黄色av播放免费| 日韩欧亚中文在线| 欧美国产日产韩国视频| 欧美性猛交99久久久久99按摩| 久久av在线播放| 欧美丰满片xxx777| 久久久久久久久久av| 久久6免费高清热精品| 亚洲色图50p| 2019中文在线观看| 欧美日韩色婷婷| 久久在线视频在线| 亚洲欧美中文日韩v在线观看| 亚洲精品一区av在线播放| 奇米4444一区二区三区| 在线播放国产精品| 亚洲欧美国内爽妇网| 久久亚洲一区二区三区四区五区高| 亚洲成人aaa| 欧美日韩国产丝袜美女| 国产xxx69麻豆国语对白| 亚洲人永久免费| 久久国产精品电影| 国产精品第8页| 色先锋资源久久综合5566| 久久精品91久久香蕉加勒比| 成人性生交大片免费观看嘿嘿视频| 欧美激情a∨在线视频播放| 欧洲精品在线视频| 国产精品99久久久久久白浆小说| 亚洲偷熟乱区亚洲香蕉av| 91免费福利视频| 一本色道久久88精品综合| 久热精品在线视频| 九九精品在线观看| 国产精品综合不卡av| 国产精品综合不卡av| 国产视频精品免费播放| 伊人av综合网| 精品福利在线视频| 亚洲va码欧洲m码| 国产91av在线| 国产精品69精品一区二区三区| 日韩欧美在线视频| 日韩国产在线看| 国产成人黄色av| 欧美大片在线免费观看| 欧美中文在线视频| 亚洲精品乱码久久久久久金桔影视| 亚洲色图美腿丝袜| 国产精品h片在线播放| 91av福利视频| 成人黄色激情网| 欧美第一黄网免费网站| 日韩经典中文字幕在线观看| 最近免费中文字幕视频2019| 亚洲一区二区三区久久| zzijzzij亚洲日本成熟少妇| 亚洲精品美女在线观看| 欧美一区二区视频97| 一本色道久久综合亚洲精品小说| 亚洲一区二区久久久久久久| 欧美黄色片免费观看| 欧美激情视频三区| 欧美成人激情图片网| 日本精品视频在线观看| 奇门遁甲1982国语版免费观看高清| 亚洲美女中文字幕| 久久在线精品视频| 国产91精品最新在线播放| 国产精品久久久久影院日本| 91久久综合亚洲鲁鲁五月天| 精品福利视频导航| 国产精品影院在线观看| 国内偷自视频区视频综合| 久久久精品国产| 成人国产精品色哟哟| 色综合亚洲精品激情狠狠| 色哟哟网站入口亚洲精品| 性色av一区二区咪爱| 国产亚洲精品久久久久动| 日韩中文理论片| 成人激情视频小说免费下载| 搡老女人一区二区三区视频tv| 欧美亚洲在线观看| 亚洲精品久久久久久久久久久| 国产福利精品在线| 国产精品一区二区电影| 亚洲二区在线播放视频| 日韩电影在线观看中文字幕| 久久手机免费视频| 国产欧美一区二区| 欧美精品电影免费在线观看| 久久久久久尹人网香蕉| 欧美日韩第一页| 亚洲精品久久久久久下一站| 国产精品久久久久9999| 精品国产一区久久久| 国产精品国产亚洲伊人久久| 国产91在线播放| 日韩成人黄色av| 亚洲免费视频在线观看| 亚洲福利在线看| 国产日韩欧美另类| 日韩一区视频在线| 日韩国产一区三区| 欧美视频免费在线观看| 亚洲黄色在线看| 91九色国产社区在线观看| 亚洲视频自拍偷拍| 色综合色综合久久综合频道88| 国产亚洲精品日韩| 亚洲国产91精品在线观看| 亚洲午夜久久久影院| 精品亚洲夜色av98在线观看| 成人美女av在线直播| 亚洲的天堂在线中文字幕| 日韩精品高清在线观看| 成人av.网址在线网站| 欧美有码在线观看视频| 最近日韩中文字幕中文| 成人在线一区二区| 亚洲白虎美女被爆操| 国产精品小说在线| 最近更新的2019中文字幕| 性色av香蕉一区二区| 欧美激情在线视频二区| 亚洲日韩欧美视频| 国产精品www网站| 久热国产精品视频| 欧美裸体xxxx极品少妇| 国产在线视频不卡|