日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

HDU 3934 Summer holiday(凸包内接最大三角形)

發(fā)布時(shí)間:2024/4/17 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HDU 3934 Summer holiday(凸包内接最大三角形) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=3934

題意:給出n個(gè)點(diǎn),從中找出三個(gè)點(diǎn)使得面積最大。

思路:旋轉(zhuǎn)卡殼模板題:首先求凸包,在旋轉(zhuǎn)求最大面積。

#include <iostream> #include <stdio.h> #include <cmath> #include <algorithm> using namespace std;struct point {double x,y;point(){}point(double _x,double _y){x=_x;y=_y;}void get(){scanf("%lf%lf",&x,&y);} };const double EPS=1e-8; const int MAX=1000005; point p[MAX],q[MAX]; int n,m;int DB(double x) {if(x>EPS) return 1;if(x<-EPS) return -1;return 0; }double Dis(point a,point b) {return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); }//判斷p在向量ab的哪一側(cè) //右側(cè):返回正值 //左側(cè):返回負(fù)值 //在向量ab上返回0 double cross(point a,point b,point p) {return (b.x-a.x)*(p.y-a.y)-(b.y-a.y)*(p.x-a.x); }int cmp(point a,point b) {double x=Dis(a,p[0]),y=Dis(b,p[0]);int flag=DB(cross(p[0],a,b));if(flag) return flag==1;return DB(x-y)<=0; }void Graham(point p[],int n,point q[],int &m) {point temp;int i,k=0,a,b;for(i=1;i<n;i++){a=DB(p[i].y-p[k].y);b=DB(p[i].x-p[k].x);if(a==-1||!a&&b==-1) k=i;}if(k!=0) temp=p[0],p[0]=p[k],p[k]=temp;sort(p+1,p+n,cmp);q[0]=p[0];q[1]=p[1];p[n]=p[0];m=2;for(i=2;i<=n;i++){while(m>1&&DB(cross(q[m-2],q[m-1],p[i]))<=0) m--;q[m++]=p[i];}m--; }double calMaxArea(point q[],int n) {if(n<3) return 0;double ans=0,temp;int t1=1,t2=2,i;q[n]=q[0];for(i=0;i<n;i++){while(DB(cross(q[t2+1],q[i],q[t1])-(temp=cross(q[t2],q[i],q[t1])))==1)t2=(++t2)%n;if(DB(temp-ans)==1) ans=temp;while(DB(cross(q[t2],q[i],q[t1+1])-(temp=cross(q[t2],q[i],q[t1])))==1)t1=(++t1)%n;if(DB(temp-ans)==1) ans=temp;}return ans/2; }int main() {while(scanf("%d",&n)!=-1){int i;for(i=0;i<n;i++) p[i].get();Graham(p,n,q,m);double ans=calMaxArea(q,m);printf("%.2lf\n",ans);}return 0; }

  

總結(jié)

以上是生活随笔為你收集整理的HDU 3934 Summer holiday(凸包内接最大三角形)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲欧美日韩系列 | 久久久精品国产免费爽爽爽 | 美女久久 | 日本免费在线观看视频 | 欧美日韩亚洲色图 | 宅男在线视频 | 亚洲av永久无码国产精品久久 | 动漫av一区 | 日韩在线观看 | 国产极品美女高潮无套在线观看 | 久久精品视频在线免费观看 | 99久久亚洲精品 | 日本在线不卡一区二区 | 国产男女无套免费网站 | 黑人一级女人全片 | 天天躁日日躁aaaa视频 | 综合网中文字幕 | 青娱乐国产在线视频 | 国产裸体舞一区二区三区 | 日韩欧美中文字幕一区二区 | 美女久久 | www.久久婷婷| 一区二区三区在线免费 | 国产三级三级三级三级三级 | 特级黄色一级片 | 日韩黄色片 | 国产又粗又猛又大爽 | 亚洲精品无amm毛片 国内一区二区三区 | 天天操欧美 | 中文字幕电影一区 | 精品国产xxx | 欧美 在线 | 亚洲国产精品成人无久久精品 | 亚洲天堂网址 | 成人深夜小视频 | 成年人性生活免费视频 | jzz在线观看 | 日韩影视一区 | 色小姐av| 手机av中文字幕 | 91porny九色91啦中文 | 天堂av免费在线 | av在线免费观看不卡 | 国产爽视频 | 噜噜噜网站 | 91桃色在线| 欧美精品久久天天躁 | 久久久久久久久久电影 | 日韩成人福利 | 影音先锋中文字幕在线播放 | 69xxx中国| 中文字幕在线精品 | 777毛片| 最新地址av| 999xxxx| 成人尤物 | 怎么可能高潮了就结束漫画 | 日日骚av一区二区 | 无码人妻精品一区二区蜜桃网站 | 又粗又猛又爽又黄少妇视频网站 | 亚洲搞av| 看片日韩| av网址在线| 中字av在线| 午夜日韩在线观看 | 欧美久久久久久久久 | 日日干日日射 | 在线a| 韩国精品av | 中文字幕天堂在线 | 亚洲天堂av一区 | 在线免费观看中文字幕 | 欧美成人不卡视频 | 国产精品久久久久久久久久久久久久久久 | 内射毛片内射国产夫妻 | 日韩欧美在线精品 | 嫩草视频一区二区三区 | www.亚洲免费 | 国产夫妻性生活视频 | av免费观看入口 | 色婷婷av777 麻豆传媒网站 | av在线播放免费 | 国产肉体ⅹxxx137大胆 | 国产高清久久久 | 欧美手机在线观看 | 国产成人啪精品午夜在线观看 | 国产免费看av| 一区小视频 | 亚洲尤物视频 | 天堂中文在线观看视频 | 国产成人无码性教育视频 | 激情文学亚洲色图 | 韩国一二三区 | 久久人人爽人人人人片 | av网站天堂 | 女人18毛片毛片毛片毛片区二 | 青青99 | 一及黄色大片 | 日本丰满少妇做爰爽爽 |