牛客練習賽18 簡單多邊形 (叉積求面積)

2021-08-20 05:09:41 字數 418 閱讀 3738

傳送門

這題主要可以用到叉積的性質,題目很簡單,只是來複習下知識點。

利用向量叉積求得的面積是可以有正負的,對於兩個向量a,b,若 a × b > 0 ,則相對於原點來說a在b的順時針方向,< 0 a 在b的逆時針方向,= 0共線。

所以這題我們可以把給定的多邊形分割成若干三角形,用叉乘求面積,最後判斷正負即可。

#includeusing namespace std;

int n;

int x[50],y[50];

int main()

if(res < 0)

puts("clockwise");

else

puts("counterclockwise");

}return 0;

}

牛客練習賽18 A B題解

牛客訓練賽18做完簽到題a和b,然後去看了下c和d應該就不是自己水平能解決的了。首先是a題求和為s的若干整數的最大乘積,這道題主要思路就是將s分為3和2,就是在n 5時,講s分解為若干個3,然後就是2 或4 因為4 2 2,所以4其實和2的效果是一樣的。然後附上a題 include include ...

pku 1654 Area 叉積求多邊形面積

給定起點 0,0 然後給出1 4 6 9 表示走的方向,輸入資料保證能夠回到原點。很裸的叉積求多邊形面積。這裡精度控制很坑爹,只要出現小數就取整數 0.5,double不能控制,所以用long long或者 int64來控制。include include include define maxn 1...

pku 1654 Area 叉積求多邊形面積

area 給定起點 0,0 然後給出1 4 6 9 表示走的方向,輸入資料保證能夠回到原點。很裸的叉積求多邊形面積。這裡精度控制很坑爹,只要出現小數就取整數 0.5,double不能控制,所以用long long或者 int64來控制。include include include define m...