链接:https://ac.nowcoder.com/acm/problem/16130
小X的多边形
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
众所周知的是,小X特别喜欢由线条组成的形状,比如说凸多边形,这一天小X正在纸上画着喜欢的凸多边形,这时候小Y走了过来,指着一张图片上的多边形,问小X知道这个图形的面积么,这可把小X难住了,聪明的你一定能够帮助小X解决这个问题,对吧~
输入描述:
多边形上最多有六个点,顺时针or逆时针给定每个点坐标(两个整数表示),保证无多余的点并且没有点重复。
输出描述:
输出一个整数,表示凸多边形的面积,结果四舍五入。
示例1
输入
3
0 0
1 0
2 2
输出
1
示例2
输入
5
-4 -2
1 -3
3 2
-1 4
-4 2
输出
35
solution:将多边形分解为多个三角形、利用行列式计算每个三角形的面积

#include <bits/stdc++.h>
using namespace std;struct Point{int x, y;
}p[101];double area(int a)
{return (p[a - 1].x * p[a].y - p[a].x * p[a - 1].y) - (p[0].x * p[a].y - p[a].x * p[0].y) + (p[0].x * p[a - 1].y - p[a - 1].x * p[0].y);
}int main()
{int n;scanf("%d", &n);for (int i = 0; i < n; ++i)scanf("%d%d", &p[i].x, &p[i].y);double sum = 0;for (int i = 2; i < n; ++i)sum += 1.0 / 2.0 * area(i);printf("%.0f\n", round(sum));return 0;
}

求任意凸多边形的面积(计算几何)相关推荐

  1. 初中生问题:求任意凸多边形的交叉面积

    一个初中生问题:求任意凸多边形的交叉面积 类似的几种情况: 第一种0:两个多边形无交叉,没有相交多边形,且一方在另一方没有内点,相交面积为0. 第二种1:两个多边形无交叉,且一方在另一方有内点.称之为 ...

  2. 用带实参的宏名通过“海伦公式”求任意三角形的面积

    #include <stdio.h> #include <math.h> /*因本程序中用到了sqrt函数,所以必须*/ #define S(a,b,c) (a+b+c)/2. ...

  3. c++如何求任意多边形的面积

    由于项目需要,求解任意不规则多边形的面积 ,想了很久,也不知道怎么叙述,直接代码展示吧 #include <iostream> #include <vector> using ...

  4. C语言用海伦公式求任意三角形的面积

    初学C语言,发布出来只是想记录我的学习过程 写这个代码的时候我是分三点来思考的 1.需要声明哪些量 2.三角形必须满足的定义 3.可以用if-else结构完成 以下就是代码: #include < ...

  5. C++实现——任意多边形的面积

    //求任意多边形的面积 /*语法:result = polygonarea(vector<Point>&polygon, int N); 参数: polygon:多变形顶点数组 N ...

  6. 凸多边形面积_C++计算任意多边形的面积

    任意多边形的面积计算_拾忆楓灵的博客-CSDN博客​blog.csdn.net 计算任意多边形的面积 - tenos - 博客园​www.cnblogs.com 完美解决计算3D空间任意多边形面积_S ...

  7. 求任意多边形面积-有向面积

     给定多边形的顶点坐标(有序),让你来求这个多边形的面积,你会怎么做? 我们知道,任意多边形都可以分割为N个三角形,所以,如果以这为突破点,那么我们第一步就是把给定的多边形,分割为数个三角形,分别 ...

  8. 已知三个点坐标求 三角形面积 || 求任意多边形面积公式||判断点在直线的左侧还是右侧

    已知三个点坐标求 三角形面积 由A-->B-->C-->A 按逆时针方向转.(行列式书写要求) 设三角形的面积为S 则S=(1/2)*(下面行列式) |x1 y1 1| |x2 y2 ...

  9. hdoj-2036题解-向量积法求任意多边形面积

    首先看一道hdoj的算法题:hdoj-2036-改革春风吹满地 该题题意就是逆时针给出点的坐标,求这个多边形的面积.下面就写一下如何用向量积法求多边形面积. 向量积法与面积 上图说明了如何利用向量求得 ...

最新文章

  1. Factory-pattern 三种工厂模式
  2. 自动化运维之CentOS7下PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装系统
  3. 【转】解决从jenkins打开robot framework报告会提示‘Opening Robot Framework log failed ’的问题...
  4. 科大星云诗社动态20201222
  5. 编写代码的软件用什么编写的_如何通过像编写代码一样克服对编写的恐惧
  6. Eclipse的SVN使用
  7. TensorFlow基础笔记(13) tf.name_scope tf.variable_scope学习
  8. redhat 7 防火墙配置
  9. soliworks三维机柜布局(三)绘制电气线路图
  10. python1到100偶数求和_python1-100怎样偶数求和?_后端开发
  11. 微电子专业想投身数字IC设计方向,在硕士阶段应该怎么学习?
  12. 屏幕录像专家7.5注册机
  13. 暴雪-关于坚持的故事(转)
  14. php一年过去多少天,php获取一年有多少天
  15. ABAP报表程序结构框架
  16. [cnblogs镜像]Unity 移动键Q的三种用法 For Mac,Windows类同
  17. 使用神经网络实现葡萄酒数据集的分类分析
  18. 我的世界pc版服务器屏幕显示太大,《我的世界》:mc的自由度太高,服务器老是被破坏,服主一招搞定...
  19. 1)前端的html和css基础标签简单盒子
  20. 悟空CRM客户关系管理系统

热门文章

  1. 使用redis生成流水号
  2. python调用sqlldr_oracle中的SQLLDR工具使用
  3. 第二行代码学习笔记——第六章:数据储存全方案——详解持久化技术
  4. android WIFI 信号强度检测
  5. wifi信号测试软件C,顶级无线路由信号强度测试(2.4GHz)
  6. 基于向量的flash开发
  7. linux下双击执行.sh脚本文件
  8. 白光干涉仪和共聚焦显微镜的区别
  9. jmeter 使用BeanShell编写java代码提取请求参数
  10. (2016)CT图像肺结节计算机辅助检测与诊断技术研究综述 学习笔记