zoukankan      html  css  js  c++  java
  • HDU 1115

    题意很明白要求多边形重心。方法已在上篇讲过了。

     #include <iostream>
     #include <cstdio>
     #include <cstring>
     #include <algorithm>
     #include <cmath>
     using namespace std;
     const int MAXN=1000005;
     struct point {
     	double x,y;
     };
     point p[MAXN];
     int n;
     
     point operator - (const point &u,const point &v){
     	point ret;
     	ret.x=u.x-v.x; ret.y=u.y-v.y; 
     	return ret;
     }
     
     double operator *(point u,point v){
     	return u.x*v.y-u.y*v.x;
     }
     
     int main(){
     	int T;
     	scanf("%d",&T);
     	while(T--){
     		scanf("%d",&n);
     		for(int i=0;i<n;i++)
     		scanf("%lf%lf",&p[i].x,&p[i].y);
     		point p0,p1,p2;
     		p[n]=p[0];
     		p0=p[0];
     		double sum_area=0,sum_x=0,sum_y=0;
     		for(int i=1;i<n;i++){
     			p1=p[i]; p2=p[i+1];
     			double V=((p1-p0)*(p2-p0))/2;
     			sum_area+=V;
     			sum_x+=(p0.x+p1.x+p2.x)*V;
     			sum_y+=(p0.y+p1.y+p2.y)*V;
     		}
     		printf("%.2lf %.2lf
    ",sum_x/3/sum_area,sum_y/3/sum_area);
     	}
     	return 0;
     }
    

      

  • 相关阅读:
    Python2.7-zlib
    Python2.7-sqlite3
    Python2.7-dbm、gdbm、dbhash、bsddb、dumbdb
    Python2.7-anydbm
    Python2.7-marshal
    Python2.7-shelve
    Python2.7-copy_reg
    Python2.7-pickle, cpickle
    Python2.7-shutil
    Python2.7-fnmacth
  • 原文地址:https://www.cnblogs.com/jie-dcai/p/3902791.html
Copyright © 2011-2022 走看看