解題思路:
求面積的話,選取凸包上的乙個點作為基點,然後把多邊形分成好多三角形,然後用叉積去算三角形面積就可以了。
#include#include#include#include#includeusing namespace std;
typedef long long ll;
const int mx = 1e5 + 10;
int n,top,_x,_y;
struct node
s[mx],tubeg[mx],w;
//在向量右側值為負
int judge(node p1,node p2,node p0)//面積公式判斷正負值
bool cmp(node a,node b)
void graham()
}int main()
if(n<=2)
swap(s[0],s[p]),w.x = s[0].x,w.y = s[0].y;
sort(s+1,s+n,cmp);//以最下左那個座標為參考座標做極角排序
graham();
double ans = 0,x1,x2,y1,y2;
for(int i=1;iprintf("%d\n",int(ans/50));
} return 0;
}
POJ 3348 Cows 凸包面積
題意 求凸包面積 50,取整 include include include include include include include using namespace std double eps 1e 12 struct cpoint double x mult cpoint a,cpoin...
POJ3348 Cows 求凸包面積
題意 求給定的n個座標形成的凸包面積 套公式即可。從而引入凸包 思路 本題利用叉乘求面積 選取凸包上的乙個點作為基點,然後把多邊形分成許多的三角形,然後用叉積去算三角形面積即可 求解凸包用到的是andrew演算法,graham演算法的變種,速度更快穩定性也更好。兩種演算法的複雜度均為o nlogn ...
POJ 3348 Cows 凸包 求面積
link 題意 給出點集,求凸包的面積 思路 主要是求面積的考察,固定乙個點順序列舉兩個點叉積求三角形面積和除2即可 date 2017 07 19 16 07 11 filename poj 3348 凸包面積 叉積.cpp platform windows author lweleth soun...