POJ 2007 Scrambled Polygon(简单极角排序)

Posted wzzkaifa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了POJ 2007 Scrambled Polygon(简单极角排序)相关的知识,希望对你有一定的参考价值。

水题,根本不用凸包,就是一简单的极角排序。

叉乘<0,逆时针。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
using namespace std;
const int maxn=55;


struct point
{
    double x,y;
} p[maxn];


double cross(point c1,point b1,point a2)
{
    return (b1.x-c1.x)*(a2.y-c1.y)-(b1.y-c1.y)*(a2.x-c1.x);
}

bool cmp(point a,point b)
{
    point c;
    c.x=0;c.y=0;
    return cross(c,b,a)<0;
}

int main()
{
    int n=0;
    while(scanf("%lf %lf",&p[n].x,&p[n].y)!=EOF)
        n++;
    sort(p+1,p+n, cmp);
    for(int i =0; i<n; i++)
        cout<<"("<<p[i].x<<","<<p[i].y<<")"<<endl;
    return 0;
}


以上是关于POJ 2007 Scrambled Polygon(简单极角排序)的主要内容,如果未能解决你的问题,请参考以下文章

POJ 2007 Scrambled Polygon 极角序 水

POJ 2007 Scrambled Polygon

[POJ2007]Scrambled Polygon(计算几何 极角排序)

POJ 2007 Scrambled Polygon(极角排序)

POJ 2007 Scrambled Polygon(简单极角排序)

Scrambled Polygon---poj2007(利用叉积排序)