#include #include #include #include #include using namespace std; const double eps = 1e-8; const double pi = acos(-1.0); int n; struct point { double x, y; point operator - (const point& t) const { point tmp; tmp.x = x - t.x; tmp.y = y - t.y; return tmp; } point operator + (const point& t) const { point tmp; tmp.x = x + t.x; tmp.y = y + t.y; return tmp; } bool operator == (const point& t) const { return fabs(x-t.x) < eps && fabs(y-t.y) < eps; } }p[220]; bool cmpxy(point a,point b) { if(a.y!=b.y) return a.y m && cross(p[top], p[i], p[top-1]) < eps ) top--; p[++top] = p[i]; if ( i == n-1 ) m = top; } n = top; } inline double PLdis(point p,point l1,point l2){ return fabs(cross(p,l1,l2))/dis(l1,l2); } void judge(point a,point b,double &len) { double max=0; for(int i=0;imax) max=tmp; } len=max; } double solve() { int i,j; double tmp; double ans=((__int64)1<<62); for(i=0;i