题目大意:如题顺时针输出凸包顶点,并且输出凸包周长;
注意:(1)题目告诉输出时,凸包起点任意,但必须输出两次;
(2)每两组数据之间换行,其他就没什么了。
解题策略:同上。
/*
UVA 218 Moth Eradication
AC by J_Dark
ON 2013/5/6 16:22
Time 0.042s
*/
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <stack>
using namespace std;
/
struct point{
double x, y;
point(double a, double b){
x = a;
y = b;
}
double Distance(point t){
return sqrt((x-t.x)*(x-t.x) + (y-t.y)*(y-t.y));
}
};
vector<point> p;
vector<int> CH; //存放凸包顶点序号 模拟栈
int testCase, top, cc=0, nodeNum;
/
void Input(){
p.clear();
CH.clear();
CH.resize(nodeNum+5);
double xx, yy;
for(int i=0; i<nodeNum; i&