也未经过题目测试。。。。
//AB X AC
double cross(Point A,Point B,Point C)
{
return (B-A)^(C-A);
}
//AB*AC
double dot(Point A,Point B,Point C)
{
return (B-A)*(C-A);
}
//最小矩形面积覆盖
// A 必须是凸包 (而且是逆时针顺序)
double min_rectangle_cover(polygon A)
{
//特判A.n<3的情况
if(A.n<3) return 0.0;
A.p[A.n]=A.p[0];
double ans=-1;
int r=1,p=1,q;
for(int i=0;i<A.n;i++)