POJ 1654(計算幾何基礎多邊形面積)

2021-08-14 01:50:13 字數 777 閱讀 2173

題意:給你一串數字,每個數字分別代表不同的方向,一定是在1x1的格仔中走動,問最後圍成的多邊形面積是多少

題解:將整個多邊形劃分,

ans = (∑相鄰兩個點分別與原點構成的線段的叉積 )/ 2

由叉積的幾何意義可知求得的結果是乙個平行四邊形的面積

#include 

#include

#include

#include

#include

#include

#include

#include

#include

#define inf 0x3f3f3f3f

using

namespace

std;

const

int maxn = 1e6 + 5;

typedef

long

long ll;

int dx = ;

int dy = ;

struct point

point(int xx, int yy):x(xx),y(yy){}

};ll cross(point a, point b, point c)

int main()

if(ans < 0) ans = -ans;

printf("%lld",ans/2);

if(ans % 2 == 1) printf(".5");

printf("\n");

}}

poj 1654 多邊形面積

題意 在平面直角座標系下,從原點開始按照指令移動。指令由數字1 9給出,每種數字表示乙個方向,包括四個正向以及四個對角方向 其中數字5表示回到原點,輸入保證圖形最終都能夠回到原點 求這些點所圍成的面積。思路 原點和相鄰的兩個點圍成乙個三角形,求所有這些三角形的 有向 面積之和即可。求面積所用的方法為...

POJ1654 多邊形面積)

題目 area 題意 在乙個網格中,你當前在起始點,然後給你一些數字,每個數字表示你網當前位置的8個方向走一步.然後你到了下乙個網格點了,就這樣讓你走出乙個多邊形,要你輸出該多邊形的面積.題目保證最後一步是回到原點,且保證能形成多邊形.圖示 分析 求的是多邊形的面積,我們有求多邊形面積的三角形法。首...

POJ 1654 Area 計算幾何基礎

題意 乙個人初始在原點,按照題目所給走法,求最後得到的矩形的面積 1 9分別表示八個方向,5表示停止。分析 以起點為原點,每走一條路,把起點和終點分別和原點連線構成兩個向量,然後用所得向量求出該三角形的面積 最後矩形的面積就是這若干個三角形的面積和。include include include i...