网站忘记备案,wordpress 空白主题,wordpress图标,个人网站做公司网站正题 题目大意
求一个多边形面积。 解题思路
随便定一个原点#xff0c;然后答案就是相邻点的差积之和的绝对值。 要判断不能组成多边形的情况。 codecodecode
#includecstdio
#includealgorithm
#includecmath
#define N 1010
#define db double
…正题 题目大意
求一个多边形面积。 解题思路
随便定一个原点然后答案就是相邻点的差积之和的绝对值。 要判断不能组成多边形的情况。 codecodecode
#includecstdio
#includealgorithm
#includecmath
#define N 1010
#define db double
using namespace std;
db zx,zy,r,x[N],y[N];
int n,cnt,ans;
struct node{db x,y;
}p[N];
db cz(node p2,node p3,node p1){return (p2.x-p1.x)*(p3.y-p1.y)-(p3.x-p1.x)*(p2.y-p1.y);
}
db banana(node p1,node p2,node p3,node p4){return (cz(p2,p3,p1)*cz(p2,p4,p1)0cz(p4,p1,p3)*cz(p4,p2,p3)0);
}
int main()
{scanf(%d,n);double ans0,lx,ly;if (n2){printf(Impossible);return 0;}for(int i1;in;i)scanf(%lf%lf,p[i].x,p[i].y);for(int i2;in;i)for(int j1;jn;j)if((i!j)(i!j1)banana(p[i-1],p[i],p[j],p[j1])){printf(Impossible);return 0;}for(int i3;in;i)anscz(p[i],p[i-1],p[1])*0.5;printf(%0.2lf,abs(ans));
}