hdu 2036

Ps:  - -感觉这道题完全就是数学题...就是求知道每个顶点的坐标,然后求这个多边形的面积...

代码:#include "stdio.h"
#include "stdlib.h"
#include "math.h"
int main(){
 int x[100],y[100];
 int i,k,n;
 double sum;
 while(~scanf("%d",&n)){
  if(n==0) return 0;
  for(i=0;i<n;i++){
   scanf("%d%d",&x[i],&y[i]);
  }
  sum=0;
  for(i=0;i<n;i++){
   if(i!=n-1){
    k=(x[i]*y[i+1])-(x[i+1]*y[i]);
    sum+=((double)k/2); 
    //printf("%.1lf",sum);
   }
      else if(i==n-1){
       k=(x[i]*y[0])-(x[0]*y[i]);
       sum+=((double)k/2);
      // printf("%.1lf",sum);
      }
  }
  printf("%.1lf\n",fabs(sum)); 
 }
 return 0;
}

时间: 2024-08-01 20:08:27

hdu 2036的相关文章

【改革春风吹满地 HDU - 2036 】【计算几何-----利用叉积计算多边形的面积】

利用叉积计算多边形的面积 我们都知道计算三角形的面积时可以用两个邻边对应向量积(叉积)的绝对值的一半表示,那么同样,对于多边形,我们可以以多边形上的一个点为源点,作过该点并且过多边形其他点中的某一个的多条射线,这样就可以把该多边形变为多个三角形,然后利用叉积求面积即可. 不过要注意,对于三角形可以简单的用叉积的绝对值的一半表示,但对于多边形不可随意将它分割成的几个三角形对应的叉积的绝对值相加,要有一定顺序才可. 对于三角形,有 [该图片来源:https://www.cnblogs.com/xie

HDU 2036 改革春风吹满地 (计算几何)

题意:你懂得. 析:没什么可说的,求面积用叉乘,尽量不要用海伦公式,因为计算量大,而且精度损失. 代码如下: #include <iostream> #include <cstdio> #include <cstring> #include <queue> #include <set> #include <vector> #include <algorithm> using namespace std; const int

hdu 2036 ||nyoj1011 叉乘求多面形面积(无论是凸凹边形都可以)

就是把一个n边形 分割为n-2个三角形 然后相加 然后求每个三角形的面积 设一个三角形的三个点x1,y1,x2,y2,x3.按逆时针给出. 那么这个三角形的面积可以表示为s=((x2-x1)*(y3-y1)-(x3-x1)*(y2-y1))/2; 贴上代码 #include <stdio.h> #include <math.h> int main() { double x1,x2,x3,y1,y2,y3,s; int n; while(scanf("%d",&a

HDU 2036 改革春风吹满地[多边形的面积]

改革春风吹满地 时限:1000ms Problem Description " 改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)"话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟然来这么几句打油诗.好呀,老师的责任就是帮你解决问题,既然想种田,那就分你一块.这块田位于浙江省温州市苍南县灵溪镇林家铺子村,多边形形状的一块地,原本是linle 的,现在就准备送给你了.不过,任何事情都没有那么简单,你必须首先告诉我这块地

HDU 2036 求任意多边形面积向量叉乘

三角形的面积可以使用向量的叉积来求: 对于 三角形的面积 等于: [(x2 - x1)*(y3 - y1)- ( y2 - y1 ) * ( x3 - x1 )  ] / 2.0 但是面积是有方向的,对于一个多边形,我们任意选取一点(通常选取 0,0),和多边形的定点相连接, 对于顺序排列的顶点,我们求原点和一对相邻的顶点组成的三角形的叉积,将这些叉积的一半累加起来 由于叉积的方向,在多边形外面的部分会抵消,这样就是多边形的面积了. 最后对结果要取绝对值,因为算出来的叉积有可能是负数: 附上例题

[HDU 2036]改革春风吹满地

Description " 改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)"话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟然来这么几句打油诗.好呀,老师的责任就是帮你解决问题,既然想种田,那就分你一块.这块田位于浙江省温州市苍南县灵溪镇林家铺子村,多边形形状的一块地,原本是linle 的,现在就准备送给你了.不过,任何事情都没有那么简单,你必须首先告诉我这块地到底有多少面积,如果回答正确才能真正得到这块地.发愁

hdu 2036 改革春风吹满地 (java)

问题: 多边形面积:s=2/1|x1*y2-x2*y1+x2*y3-x3*y2+......xn*y1-x1*yn| 输出控制小数和空行格式:System.out.printf("%.1f\r\n",s); 改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 22452    Accepted Submission

HDU 2036 改革春风吹满地 (求多边形面积)

传送门: 改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 42663    Accepted Submission(s): 21856 Problem Description " 改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)" 话说部分学生心态极好,每天就知道游戏,这次考试如

hdu 2036 求多边形面积 (凸、凹多边形)

<题目链接> Problem Description " 改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)" 话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟然来这么几句打油诗.好呀,老师的责任就是帮你解决问题,既然想种田,那就分你一块.这块田位于浙江省温州市苍南县灵溪镇林家铺子村,多边形形状的一块地,原本是linle 的,现在就准备送给你了.不过,任何事情都没有那么简单,你必须首先告诉我这块地到底有多