poj2007凸包graham逆時針輸出

2021-06-09 23:10:54 字數 398 閱讀 1301

題意:給出一組點,包含原點,求凸包,並從原點開始按照逆時針方向輸出

#include#include#include#define max 1000

using namespace std;

struct points

;points p[max];

int n,l,res[max],top;

bool cmp(const points &a,const points &b)

void graham()

}int main()

{ int s,i;

n=0;

while(scanf("%lf%lf",&p[n].x,&p[n].y)!=eof)n++;

graham();

for(s=0;s

幾何 凸包(Graham)

在凸包內部的點肯定不會是最遠點對之一,可以不考慮,只列舉在凸包上的所有點對距離長度,並進行比較即可 建凸包 當加入乙個新的點1,這個點和上兩個點2 3組成的角是銳角,則表示點2凹進去了,不是凸包上的點,把點2刪去 include include include include include inc...

poj 2007 極角排序

極角排序有四種方法,我一開始就是先算出極角來,然後進行排序,可交上去卻是wa,現在還沒有搞,後面用另一種還是錯了,最後用了這種才過的!如下 include include include include include using namespace std const int maxn 55 st...

POJ 2007 叉積排序

題意 給出凸包上的點,其中乙個點是 0,0 要求從 0,0 按照逆時針輸出所有點。題解 不能有極角排序,因為多邊形可能在原點的左側。view code 1 include 2 include 3 include 4 include 5 include 6 include 7 8 define n 2...