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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

n个点组成多少个三角形Java,农田开发 NOJ (已知N个点选取3个求最大三角形面积问题)...

發布時間:2023/12/19 java 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 n个点组成多少个三角形Java,农田开发 NOJ (已知N个点选取3个求最大三角形面积问题)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目描述

有一塊農田,田地里安放上N個小木樁,木樁的占地面積忽略不計。選擇三個小木樁,使得三個小木樁的圍成的三角形占地面積最大。

輸入

第一行一個整數N(3<=n<=100),便是木樁個數。

接下來N行,每行含有兩個整數xi和yi(-10000<=xi,yi<=10000),表示第i個木樁的平面坐標。

輸出

僅含有一個數,表示得到的農田面積的最大值,結果保留一位小數。

樣例輸入

4 0?0 0?1 1?0 1?1

樣例輸出

0.5

實現代碼:

#include

#include

#include

#include

#include

using namespace std;

const int N=50005;

struct Point

{

double x,y;

};

Point stack[N];

Point p[N];

Point MinA;

int top;

double dist(Point A,Point B)

{

return sqrt((A.x-B.x)*(A.x-B.x)+(A.y-B.y)*(A.y-B.y));

}

double cross(Point A,Point B,Point C)

{

return (B.x-A.x)*(C.y-A.y)-(B.y-A.y)*(C.x-A.x);

}

bool cmp(Point a,Point b)

{

double k=cross(MinA,a,b);

if(k>0) return 1;

if(k<0) return 0;

return dist(MinA,a)

}

void Graham(int n)

{

int i;

for(i=1; i

if(p[i].y

swap(p[i],p[0]);

MinA=p[0];

sort(p+1,p+n,cmp);

stack[0]=p[0];

stack[1]=p[1];

top=1;

for(i=2; i

{

while(cross(stack[top-1],stack[top],p[i])<=0&&top>=1) --top;

stack[++top]=p[i];

}

}

double rotating_calipers(int n)

{

int j=1,k=0;

double ans=0;

for(int i=0;i

{

j=(i+1)%n;

k=(j+1)%n;

while(fabs(cross(stack[i],stack[j],stack[k]))

k=(k+1)%n;

while(j!=i&&k!=i)

{

ans=max(ans,fabs(cross(stack[i],stack[j],stack[k])));

while(fabs(cross(stack[i],stack[j],stack[k]))

k=(k+1)%n;

j=(j+1)%n;

}

}

return ans*0.5;

}

int main()

{

int n;

while(~scanf("%d",&n))

{

if(n==-1) break;

for(int i=0;i

scanf("%lf%lf",&p[i].x,&p[i].y);

if(n<3)

{

puts("0.00");

continue;

}

Graham(n);

top++;

if(top<3)

{

puts("0.0");

continue;

}

if(top==3)

{

printf("%.1lf\n",fabs(cross(stack[0],stack[1],stack[2]))/2);

continue;

}

printf("%.1lf\n",rotating_calipers(top));

}

return 0;

}

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的n个点组成多少个三角形Java,农田开发 NOJ (已知N个点选取3个求最大三角形面积问题)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 香港日本韩国三级网站 | 秋霞av鲁丝片一区二区 | 91伊人网 | a级片网站| 国产精品久久毛片av大全日韩 | 青青草国产在线 | 久久一精品 | 一区二区三区在线观看免费 | 亚洲国产综合在线 | 亚洲香蕉在线视频 | 一级人爱视频 | 动漫涩涩免费网站在线看 | xxx视频在线观看 | 婷婷综合av | 91精品国产高潮对白 | 日本wwwxxx| 国产精品精品软件视频 | 亚洲第一香蕉网 | 国产特黄aaaaa毛片 | 欧美成人aaaaa | 日韩精品麻豆 | 无码人妻久久一区二区三区蜜桃 | 日皮毛片 | 中文字幕在线免费看 | 久久爱网 | 97精品一区 | 国产精品扒开做爽爽爽的视频 | 秘密基地动漫在线观看免费 | 精品人妻一区二区三区视频 | 我会温柔一点的日剧 | 欧美在线亚洲 | 97久久久久 | 成人性生交大片免费看vrv66 | 中文在线观看免费 | 人人澡人人插 | 超碰人人国产 | 久久久伊人网 | 亚洲AV无码成人精品区先锋 | 日韩免费视频一区二区视频在线观看 | 国产精品久久91 | 成了校长的性脔h文 | 在线观看污污视频 | 国产一区二区波多野结衣 | 亚洲国产一区二区三区a毛片 | 国产又粗又大又爽视频 | 成年人在线观看视频网站 | 国产一在线| 超碰97在线看 | 超碰caopor | 亚洲国产永久 | 午夜国产在线视频 | 法国空姐 在线 | 人妻激情偷乱视频一区二区三区 | 无人在线观看高清视频 单曲 | 国产午夜三级 | 欧美xxxx黑人 | 亚洲AV无码国产精品午夜字幕 | 欧美亚洲天堂 | 东北少妇av | 久久天天躁狠狠躁夜夜躁2014 | 一边摸一边抽搐一进一出视频 | zoo性欧美 | 一级福利片| 蜜桃视频中文字幕 | 人人天天夜夜 | 97人人看| 欧美熟妇精品一区二区 | 91国在线观看 | h网站在线观看 | 国产精自产拍久久久久久蜜 | 成人免费毛片东京热 | 2020国产精品视频 | 亚洲天堂日韩av | 中文字幕在线播放一区 | 六月婷婷在线 | 日韩专区欧美专区 | 高清中文字幕在线a片 | 国产精品成人久久 | 国产高清在线观看视频 | 国产精品久久久久久久久久妞妞 | 一区二区在线免费视频 | 日韩精品在线观看视频 | 男人桶进美女尿囗 | 国产精品一区二区久久国产 | 欧美香蕉视频 | 少妇精品无码一区二区 | 狠狠干男人的天堂 | 日韩美女做爰高潮免费 | 奇米影视777第四色 2019中文字幕在线免费观看 | 玖玖色资源 | 欧美日韩一区二区在线观看 | 国产婷婷精品 | 草在线 | 亚洲国产精品视频一区二区 | 一区二区三区视频免费在线观看 | 水蜜桃亚洲精品 | 精品国产99久久久久久 | 久久伊人免费视频 | 变态另类一区 |