zoukankan      html  css  js  c++  java
  • [Codeforces 1300D]Aerodynamic(计算几何)

    [Codeforces 1300D]Aerodynamic(计算几何)

    题面

    给出一个凸多边形,判断该多边形平移得到的包含原点的所有多边形的并得到的吐血,和这个凸多边形本身相似。

    分析

    发现如果点数为奇数显然不行。否则判断这个多边形是否中心对称即可,即判断对边中点是否重合。

    代码

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #define maxn 100000
    using namespace std; 
    struct Vector{
        double x;
        double y;
        Vector(){
    
        }
        Vector(double _x,double _y){
            x=_x;
            y=_y;
        }
        friend Vector operator + (Vector p,Vector q){
            return Vector(p.x+q.x,p.y+q.y);
        }
        friend Vector operator - (Vector p,Vector q){
            return Vector(p.x-q.x,p.y-q.y);
        }
        friend Vector operator * (Vector a,double d){
            return Vector(a.x*d,a.y*d);
        }
        friend Vector operator / (Vector a,double d){
            return Vector(a.x/d,a.y/d);
        }
        friend bool operator == (Vector p,Vector q){
        	return p.x==q.x&&p.y==q.y;
    	}
    	friend bool operator != (Vector p,Vector q){
        	return !(p==q);
    	}
    };
    typedef Vector point;
    inline double dot(Vector p,Vector q){
        return p.x*q.x+p.y*q.y;
    }
    inline double dist(point p,point q){
        return sqrt(dot(p-q,p-q));
    }
    inline double cross(Vector p,Vector q){
        return p.x*q.y-p.y*q.x;
    }
    inline double length(Vector x){
        return sqrt(dot(x,x));
    } 
    int n;
    point a[maxn+5],b[maxn+5];
    int main(){
    	scanf("%d",&n);
    	for(int i=1;i<=n;i++){
    		scanf("%lf %lf",&a[i].x,&a[i].y);
    	}
    	if(n%2==1){
    		printf("NO
    ");
    	}else{
    		for(int i=2;i<=n/2;i++){
    			if((a[i]+a[i+n/2])!=(a[i-1]+a[i-1+n/2])){
    				printf("NO
    ");
    				return 0;
    			}
    		}
    		printf("YES
    ");
    	}
    }
    
  • 相关阅读:
    nginx 域名跳转一例~~~(rewrite、proxy)
    军哥 LNMP 常见问题
    Zabbix安装
    PHP远程连接mysql
    Zend Studio 下载
    军哥LNMP优化
    网络流量监控分析工具 Ntopng 安装
    Linux VPS禁止某个IP访问
    DDoS deflate
    MySQL数据库的优化
  • 原文地址:https://www.cnblogs.com/birchtree/p/12289948.html
Copyright © 2011-2022 走看看