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

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

NYOJ3—多邊形重心問題(計算幾何)&&hdu1115 Lifting the Stone

2019-11-11 06:53:03
字體:
來源:轉載
供稿:網友

多邊形重心問題

時間限制:3000 ms  |  內存限制:65535 KB難度:5描述在某個多邊形上,取n個點,這n個點順序給出,按照給出順序將相鄰的點用直線連接, (第一個和最后一個連接),所有線段不和其他線段相交,但是可以重合,可得到一個多邊形或一條線段或一個多邊形和一個線段的連接后的圖形; 如果是一條線段,我們定義面積為0,重心坐標為(0,0).現在求給出的點集組成的圖形的面積和重心橫縱坐標的和;輸入第一行有一個整數0<n<11,表示有n組數據;每組數據第一行有一個整數m<10000,表示有這個多邊形有m個頂點;輸出輸出每個多邊形的面積、重心橫縱坐標的和,小數點后保留三位;樣例輸入
330 10 20 331 10 00 141 10 00 0.50 1樣例輸出
0.000 0.0000.500 1.0000.500 1.000
#include<cstdio>int cases,n;double a[10002],b[10002],t,xx,yy,area;inline double fun(int i){	return (a[i]*b[i+1]-a[i+1]*b[i])/2;}inline double ffabs(double i){	return i>0?i:-i;}int main(){	scanf("%d",&cases);	while(cases--){		xx=yy=area=0;		scanf("%d",&n);		for(int i=1;i<=n;i++)		scanf("%lf%lf",&a[i],&b[i]);		a[n+1]=a[1],b[n+1]=b[1];		for(int i=1;i<=n;i++){			t=fun(i);			area+=t;			xx+=t*(a[i]+a[i+1]);			yy+=t*(b[i]+b[i+1]);		}	xx=xx/3/area;	yy=yy/3/area;	area=ffabs(area);	if(area<1e-8)	PRintf("0.000 0.000/n");	else	printf("%.3lf %.3lf/n",area,xx+yy);}return 0;}

*①質量集中在頂點上* n個頂點坐標為(xi,yi),質量為mi,則重心* X = ∑( xi×mi ) / ∑mi* Y = ∑( yi×mi ) / ∑mi* 特殊地,若每個點的質量相同,則* X = ∑xi / n* Y = ∑yi / n*②質量分布均勻* 特殊地,質量均勻的三角形重心:* X = ( x0 + x1 + x2 ) / 3* Y = ( y0 + y1 + y2 ) / 3*③三角形面積公式:S = ( (x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1) ) / 2 ;*做題步驟:1、將多邊形分割成n-2個三角形,根據③公式求每個三角形面積。* 2、根據②求每個三角形重心。* 3、根據①求得多邊形重心。**/

兩種方法:

一種是將n個點,以其中一個點為標準,分成n-2個三角形,再進行求重心。

另一種是以原點為依據分成n+1個三角形,再進行求重心。

Lifting the Stone

Time Limit: 2000/1000 MS (java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7885    Accepted Submission(s): 3331Problem DescriptionThere are many secret openings in the floor which are covered by a big heavy stone. When the stone is lifted up, a special mechanism detects this and activates poisoned arrows that are shot near the opening. The only possibility is to lift the stone very slowly and carefully. The ACM team must connect a rope to the stone and then lift it using a pulley. Moreover, the stone must be lifted all at once; no side can rise before another. So it is very important to find the centre of gravity and connect the rope exactly to that point. The stone has a polygonal shape and its height is the same throughout the whole polygonal area. Your task is to find the centre of gravity for the given polygon.  InputThe input consists of T test cases. The number of them (T) is given on the first line of the input file. Each test case begins with a line containing a single integer N (3 <= N <= 1000000) indicating the number of points that form the polygon. This is followed by N lines, each containing two integers Xi and Yi (|Xi|, |Yi| <= 20000). These numbers are the coordinates of the i-th point. When we connect the points in the given order, we get a polygon. You may assume that the edges never touch each other (except the neighboring ones) and that they never cross. The area of the polygon is never zero, i.e. it cannot collapse into a single line.  OutputPrint exactly one line for each test case. The line should contain exactly two numbers separated by one space. These numbers are the coordinates of the centre of gravity. Round the coordinates to the nearest number with exactly two digits after the decimal point (0.005 rounds up to 0.01). Note that the centre of gravity may be outside the polygon, if its shape is not convex. If there is such a case in the input data, print the centre anyway.  Sample Input
245 00 5-5 00 -541 111 111 111 11 Sample Output
0.00 0.006.00 6.00 SourceCentral Europe 1999
#include<cstdio>int cases,n;double a[10002],b[10002],t,xx,yy,area;inline double fun(int i){	return (a[i]*b[i+1]-a[i+1]*b[i])/2;}inline double ffabs(double i){	return i>0?i:-i;}int main(){	scanf("%d",&cases);	while(cases--){		xx=yy=area=0;		scanf("%d",&n);		for(int i=1;i<=n;i++)		scanf("%lf%lf",&a[i],&b[i]);		a[n+1]=a[1],b[n+1]=b[1];		for(int i=1;i<=n;i++){			t=fun(i);			area+=t;			xx+=t*(a[i]+a[i+1]);			yy+=t*(b[i]+b[i+1]);		}	xx=xx/3/area;	yy=yy/3/area;	printf("%.2lf %.2lf/n",xx,yy);}return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩女优在线播放| 中文字幕视频一区二区在线有码| 97碰在线观看| 91精品在线观看视频| 久久精品国产v日韩v亚洲| 久久精品成人欧美大片| 欧美日韩国产成人高清视频| 国内精品400部情侣激情| 日韩在线视频中文字幕| 国产精品久久电影观看| 亚洲精品福利视频| 精品国内自产拍在线观看| 亚洲一区二区三区久久| 色婷婷成人综合| 日韩av不卡在线| 超碰日本道色综合久久综合| 中国人与牲禽动交精品| 日韩av一区二区在线观看| 久久亚洲精品一区二区| 亚洲区bt下载| 国产在线视频91| 97色伦亚洲国产| 久久免费高清视频| 国产欧美 在线欧美| 成人av在线天堂| 日韩中文字幕网址| 国产精品欧美久久久| 77777亚洲午夜久久多人| 中文字幕免费精品一区| 欧美亚洲国产视频小说| 欧美日韩国产中文精品字幕自在自线| 亚洲精品视频二区| 国产精品h片在线播放| 日韩在线观看免费| 黑人巨大精品欧美一区二区| 91深夜福利视频| 亚洲aaaaaa| 都市激情亚洲色图| 国产v综合v亚洲欧美久久| 日韩电影免费在线观看中文字幕| 亚洲人成77777在线观看网| 国产成人精品电影久久久| 国模吧一区二区| 不卡av日日日| 蜜臀久久99精品久久久无需会员| 日本道色综合久久影院| 精品无人区乱码1区2区3区在线| 久久精品国产欧美激情| 亚洲一区二区三区xxx视频| 亚洲aaaaaa| 欧美俄罗斯乱妇| 有码中文亚洲精品| 欧美日韩国产二区| 久久99精品视频一区97| 日韩成人中文字幕在线观看| 精品女同一区二区三区在线播放| 美女撒尿一区二区三区| 国产成人精彩在线视频九色| 亚洲国产99精品国自产| 欧美性少妇18aaaa视频| 91福利视频网| 国产免费亚洲高清| 北条麻妃一区二区三区中文字幕| 亚洲精品久久久久国产| 欧美色视频日本高清在线观看| 一本一道久久a久久精品逆3p| 九九九热精品免费视频观看网站| 国产亚洲一级高清| 精品国内自产拍在线观看| 美女福利视频一区| 日韩国产中文字幕| 欧洲永久精品大片ww免费漫画| 中文字幕精品在线| 亚洲成人黄色在线观看| 亚洲精品女av网站| 欧美激情免费观看| 亚洲跨种族黑人xxx| 久久精品国产电影| 欧美劲爆第一页| 最近2019年手机中文字幕| 国产精品老女人精品视频| 欧美激情极品视频| 久久综合色影院| 成人亲热视频网站| 91精品国产高清自在线| 国产精品久久网| 亚洲色图美腿丝袜| 伊人一区二区三区久久精品| 国产精品中文字幕久久久| 麻豆乱码国产一区二区三区| 欧美国产极速在线| 国产一区二区精品丝袜| 97香蕉超级碰碰久久免费软件| 日本午夜精品理论片a级appf发布| 91精品中国老女人| 68精品国产免费久久久久久婷婷| 亚洲少妇中文在线| 亚洲国产成人精品久久久国产成人一区| 欧美成人免费在线视频| 91精品免费看| 色偷偷偷综合中文字幕;dd| 国产午夜精品视频| 日本免费在线精品| 精品无码久久久久久国产| 久久精品国产清自在天天线| 中文字幕日韩在线视频| 国产美女精彩久久| 亚洲精品电影在线| 尤物九九久久国产精品的特点| 日韩电视剧免费观看网站| 国产精品高精视频免费| 国产亚洲精品久久久久久牛牛| 久青草国产97香蕉在线视频| 日韩美女主播视频| 久久伊人91精品综合网站| 亚洲精品v天堂中文字幕| 欧美做爰性生交视频| 精品视频偷偷看在线观看| 精品久久久999| 精品亚洲aⅴ在线观看| 亚洲色在线视频| 国产精品久久久久久久9999| 亚洲乱码国产乱码精品精天堂| 国产香蕉一区二区三区在线视频| 亚洲国产精品网站| 亚洲福利小视频| 亚洲国产一区二区三区四区| 91精品视频免费看| 亚洲成色www8888| 欧美性xxxxxx| 精品小视频在线| 欧美午夜宅男影院在线观看| 亚洲欧美国产视频| 欧美人与性动交a欧美精品| 国产日韩欧美夫妻视频在线观看| 一区国产精品视频| 国内精品伊人久久| 亚洲黄页网在线观看| 91在线精品播放| 欧美在线亚洲一区| 亚洲免费影视第一页| 亚洲黄色av网站| 国产区亚洲区欧美区| 久久人人爽人人爽人人片av高请| 亚洲三级黄色在线观看| 国产精品视频免费观看www| 欧美在线视频免费| 日韩电影网在线| 亚洲精品美女在线观看播放| 亚洲国产欧美一区二区丝袜黑人| 欧美日韩国产中文精品字幕自在自线| 日韩精品极品在线观看播放免费视频| 欧美一级淫片丝袜脚交| 精品亚洲永久免费精品| 国产精品91免费在线| 欧洲一区二区视频| 久久天堂av综合合色| 欧美日本黄视频| 美女av一区二区| 国产婷婷成人久久av免费高清| 日韩电影中文字幕在线| 精品国产一区二区三区久久狼黑人| 欧美最猛性xxxxx(亚洲精品)| 成人网在线免费观看|