HDU 2036 改革春风吹满地(计算多边形面积)
2016-07-25 16:47
459 查看
题目链接
http://acm.hdu.edu.cn/showproblem.php?pid=2036题解:
将多边形分成无数个三角形,然后利用叉积计算三角形面积,最后把所有三角形面积加一起就好了。(不要用绝对值,会WA)AC代码:
#include <iostream> #include <cstdio> #include <iomanip> using namespace std; int x[200],y[200]; int main() { int t; while(cin >> t) { if(t == 0)break; double ans = 0; for(int i = 0; i < t; i++) { cin >> x[i] >> y[i]; } int x0 = x[0],y0 = y[0]; int x1,y1,x2,y2,area; for(int i = 2; i < t; i++) { x1 = x[i-1], y1 = y[i-1]; x2 = x[i], y2 = y[i]; area = (x1 - x0) * (y2 - y0) - (y1 - y0) * (x2 - x0); ans += area; } printf("%.1f\n", ans/2.0); } return 0; }
相关文章推荐
- Demo-取checkbox选中个数
- hbase1.X的部分api改变(慢慢更新)
- hibernate使用学习总结
- python学习 第三篇字典,列表生成式,文件操作
- [Nginx]使用源码编译安装Nginx服务器
- Android ShapeDrawable之OvalShape、RectShape、PaintDrawable、ArcShape
- Android ShapeDrawable之OvalShape、RectShape、PaintDrawable、ArcShape
- MongoDB数据库操作
- Linux安装xwindow图形界面
- 使用xib开发界面
- 三维旋转:旋转矩阵,欧拉角,四元数
- SQL SERVER 连接几个知识点
- 半平面交
- 操作系统实训总结
- POJ 1915 Knight Moves
- UVA 10518 How Many Calls?
- spring-session使用教程(一):redis共享session
- 快速搭建hadoop+hbase分布式集群
- 点击屏幕键盘退出
- php从入门到放弃系列-02.php基础语法