hdu 2036:改革春风吹满地(叉积求凸多边形面积)
改革春风吹满地
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 16308 Accepted Submission(s): 8316
不会AC没关系;
实在不行回老家,
还有一亩三分地。
谢谢!(乐队奏乐)”
话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟然来这么几句打油诗。
好呀,老师的责任就是帮你解决问题,既然想种田,那就分你一块。
这块田位于浙江省温州市苍南县灵溪镇林家铺子村,多边形形状的一块地,原本是linle 的,现在就准备送给你了。不过,任何事情都没有那么简单,你必须首先告诉我这块地到底有多少面积,如果回答正确才能真正得到这块地。
发愁了吧?就是要让你知道,种地也是需要AC知识的!以后还是好好练吧...
输入数据中所有的整数都在32位整数范围内,n=0表示数据的结束,不做处理。
每个实例的输出占一行。
4 1 0 0 1 -1 0 0 -1
0
2.0
const int MAXPOINT = ;
struct Point{ //定义点结构
double x,y;
}p[MAXPOINT];
double getS(Point a,Point b,Point c) //返回三角形面积
{
return ((b.x - a.x) * (c.y - a.y) - (b.y - a.y)*(c.x - a.x))/;
}
double getPS(Point p[],int n) //返回多边形面积。必须确保 n>=3,且多边形是凸多边形
{
double sumS=;
for(int i=;i<=n-;i++)
sumS+=getS(p[],p[i],p[i+]);
return sumS;
}
题目代码:
#include <iostream>
#include <iomanip>
using namespace std;
const int MAXPOINT = ;
struct Point{ //定义点结构
double x,y;
}p[MAXPOINT];
double getS(Point a,Point b,Point c) //返回三角形面积
{
return ((b.x - a.x) * (c.y - a.y) - (b.y - a.y)*(c.x - a.x))/;
}
double getPS(Point p[],int n) //返回多边形面积。必须确保 n>=3,且多边形是凸多边形
{
double sumS=;
for(int i=;i<=n-;i++)
sumS+=getS(p[],p[i],p[i+]);
return sumS;
}
int main()
{
int n;
cout<<setiosflags(ios::fixed)<<setprecision();
while(cin>>n){
if(n==) break;
for(int i=;i<=n;i++)
cin>>p[i].x>>p[i].y;
cout<<getPS(p,n)<<endl;
}
}
Freecode : www.cnblogs.com/yym2013
hdu 2036:改革春风吹满地(叉积求凸多边形面积)的更多相关文章
- hdu 2036 改革春风吹满地【求多边形面积模板】
链接: http://acm.hdu.edu.cn/showproblem.php?pid=2036 http://acm.hust.edu.cn/vjudge/contest/view.action ...
- HDU 2036 改革春风吹满地 (求多边形面积)
传送门: 改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...
- HDU - 2036 改革春风吹满地 叉乘法求多边形面积
改革春风吹满地 “ 改革春风吹满地, 不会AC没关系; 实在不行回老家, 还有一亩三分地. 谢谢!(乐队奏乐)” 话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟 ...
- HDU 2036 改革春风吹满地【计算几何/叉乘求多边形面积】
改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- [HDU 2036]改革春风吹满地
Description “ 改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)”话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里雾里,而且,还竟然 ...
- HDU 2036 改革春风吹满地 (数学)
题目链接 Problem Description " 改革春风吹满地, 不会AC没关系; 实在不行回老家, 还有一亩三分地. 谢谢!(乐队奏乐)" 话说部分学生心态极好,每天就知道 ...
- hdu 2036 - 改革春风吹满地(计算几何)
题意:求解多边形面积 解法: 先了解数学上"叉积"的含义与性质: 三角形ΔABC的面积为: 我们可以依次计算每个三角形的面积,ΔABC,ΔACE,ΔEF - - 所有三角形的面积之 ...
- HDU 2036 改革春风吹满地 (计算几何)
题意:你懂得. 析:没什么可说的,求面积用叉乘,尽量不要用海伦公式,因为计算量大,而且精度损失. 代码如下: #include <iostream> #include <cstdio ...
- hdu:2036.改革春风吹满地
Problem Description “ 改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)” 话说部分学生心态极好,每天就知道游戏,这次考试如此简单的题目,也是云里 ...
随机推荐
- python爬虫_入门_翻页
写出来的爬虫,肯定不能只在一个页面爬,只要要爬几个页面,甚至一个网站,这时候就需要用到翻页了 其实翻页很简单,还是这个页面http://bbs.fengniao.com/forum/10384633. ...
- S5700的Eth-Trunk端口汇聚(trunk实验)
S5700的Eth-Trunk端口汇聚 链路汇聚和端口汇聚,就是端口聚合,交换机的堆叠是堆叠和端口聚合无关. 端口聚合概念:(包括二层端口聚合和三层端口聚合) 1.端口聚合IEEE标准是将最多16条链 ...
- linux正则表达式(基础正则表达式+扩展正则表达式)
正则表达式应用非常广泛,例如:php,Python,java等,但在linux中最常用的正则表达式的命令就是grep(egrep),sed,awk等,换句话 说linux三剑客要想能工作的更高效,就一 ...
- laravel 安装步骤
1.将laravel安装文件里的 (composer.bat 和 composer.phar)放在你要使用的php版本 里的:如:D:\phpStudy\php\php-7.0.12-nts 2.进入 ...
- BZOJ3673/3674:可持久化并查集
Description n个集合 m个操作 操作: 1 a b 合并a,b所在集合 2 k 回到第k次操作之后的状态(查询算作操作) 3 a b 询问a,b是否属于同一集合,是则输出1否则输出0 0& ...
- Android Studio运行找不到Genymotion虚拟机
如图: 在Genymotion->Settings下ADB选项卡下选择使用SDK工具: 完成后试试吧
- MetaMask/Website
https://github.com/MetaMask/Website 将这个包下载下来之后运行npm install出现下面的问题 gyp: No Xcode or CLT version dete ...
- nginx反向代理和tomcat集群(适用于ubutnu16.04及其centos7)
下面示例,本人亲测有效 为什么要反向代理和集群? 因为并发问题,很多请求如果全部分发给一个tomcat,一个tomcat优化最好的话,据说可达到800负载,但是面对成千上万的请求,单单一个tomcat ...
- vue计算属性和vue实力的属性和方法
生命周期 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- 垃圾回收相关(深入理解Java虚拟机中的内容)
程序计数器.虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后也会消失,因此不需要对这三个区域进行垃圾回收.垃圾回收主要是针对 Java 堆和方法区进行. 判断一个对 ...