Aerodynamic

D - Aerodynamic

T所表示的图形就相当于是把原点放在P所表示的图形的边缘,然后不断的把图形平移,绕原点旋转,原点始终位于P所表示出的图形的边缘。

这样一来可以意识到只有当原图形是中心对称图形的时候,T与P才会相似。

证明图形为中心对称图形

// Created by CAD on 2020/2/11.
#include 
using namespace std;

const int maxn=1e5+5;
double x[maxn],y[maxn];

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n;cin>>n;
    for(int i=1;i<=n;++i)
        cin>>x[i]>>y[i];
    if(n&1) return puts("NO");
    else{
        double mx=(x[1]+x[n/2+1])/2.0,my=(y[1]+y[n/2+1])/2.0;
        for(int i=2;i<=n/2;++i){
            double tx=(x[i]+x[n/2+i])/2.0,ty=(y[i]+y[n/2+i])/2.0;
            if(tx!=mx||ty!=my) return puts("NO");
        }
        return puts("YES");
    }
}

你可能感兴趣的:(Aerodynamic)