#include<iostream>        //多边形面积#include<string>using namespace std;struct point{int x,y;}p[1000010];int move[10][2]={{},{-1,-1},{0,-1},{1,-1},{-1,0},{},{1,0},{-1,1},{0,1},{1,1}};int main(){int cases;string str;    cin>>cases;while(cases--)    {        cin>>str;int n=str.size()-1;if(n<3)        {            printf("0\n");continue;        }        p[0].x=p[0].y=0;for(int i=0;i<n;++i)        {            p[i+1].x=p[i].x+move[str[i]-'0'][0];            p[i+1].y=p[i].y+move[str[i]-'0'][1];        }        __int64 area=0;        //超int范围        for(int i=0;i<n;++i)            area+=p[i].x*p[i+1].y-p[i].y*p[i+1].x;        area+=p[n].x*p[0].y-p[n].y*p[0].x;if(area<0)            area=-area;if(area%2==0)        //答案要么是整数,要么是整数+0.5.不能用double存储,精度会不够.            printf("%I64d\n",area/2);else            printf("%I64d.5\n",area/2);    }return 0;}

  

转载于:https://www.cnblogs.com/mjc467621163/archive/2011/07/22/2114475.html

poj 1654 Area相关推荐

  1. poj 1654 Area 多边形面积

    /* poj 1654 Area 多边形面积题目意思很简单,但是1000000的point开不了 */ #include<stdio.h> #include<math.h> # ...

  2. POJ 1654 Area 凸包面积

    水题直接码... /********************* Template ************************/ #include <set> #include < ...

  3. POJ 1265 Area(Pick定理)

    POJ 1265 Area(Pick定理) 根据pick定理来做 皮克定理是指一个计算点阵中顶点在格点上的多边形面积公式该公式可以表示为 2S=2a+b−2 其中a表示多边形内部的点数,b表示多边形边 ...

  4. poj 1265 Area(pick 定理)

    链接:poj 1265 题意:从原点出发.给出一些dx,dy移动增量,终于形成一个多边形, 求多边形内部的格点数目,边上的格点数目 .以及面积. 补充知识: 1.以格子点为顶点的线段.覆盖的点的个数为 ...

  5. POJ 1389 Area of Simple Polygons(扫描线求面积)

    思路:纯纯扫描线求面积模板题,求点赞qaq. #include<iostream> #include<cstdio> #include<cstring> #incl ...

  6. POJ 1265 Area

    题目大意: 给一个平面上的简单多边形,求边上的点,多边形内的点,多边形面积. 解题思路: 这个题用了很多知识点: 1.以格子点为顶点的线段,覆盖的点的个数为GCD(dx,dy),其中,dxdy分别为线 ...

  7. POJ 1654 乱搞题?

    题意: 从一个点出发,8个方向,给出每一步的方向,求出走过的路径形成的多边形的面积. 思路: 先普及一下向量叉乘.. (摘自度娘) 也就是x1y2-x2y1. 那这不就好说了嘛. 一个经过原点的闭合多 ...

  8. POJ 计算几何入门题目推荐

      其实也谈不上推荐,只是自己做过的题目而已,甚至有的题目尚未AC,让在挣扎中.之所以推荐计算几何题,是因为,本人感觉ACM各种算法中计算几何算是比较实际的算法,在很多领域有着重要的用途(例如本人的专 ...

  9. [Z]POJ 计算几何入门题目推荐[转PKKJ]

    http://www.cnblogs.com/eric-blog/archive/2011/05/31/2064785.html http://hi.baidu.com/novosbirsk/blog ...

最新文章

  1. python逐个读取文件并处理_逐个读取多个文件并用python进行处理
  2. C的无符号数据类型int,short,byte 转为 Java对应的数据long,char,short
  3. mysql查询递增列_mysql在查询结果列表前添加一列递增的序号列(最简)
  4. 微软块级备份引擎服务器,文件级与块级备份区别
  5. windows 服务 定时程序 跑不出数据
  6. UTM(Undergraduate Texts in Mathematics)书单 |附下载链接
  7. Linux进程、线程、任务调度(1)贵在坚持
  8. dialog下textarea滚动条不显示
  9. matlab数字图像处理灰度变换ppt课件,数字图像处理 灰度变换.ppt
  10. 未来计算机作文想象,想象未来作文450字
  11. 屏蔽csdn右下角广告插件
  12. 台式电脑怎么组装步骤_台式电脑组装教程图解,手把手教您组装(零基础也能搞定)...
  13. python与seo实战课程下载_黑帽seo教程:SEO快排套路与SEO快排Python应用编程技术(零基础)...
  14. Spark RDD与Partion
  15. Python爬虫以及数据可视化分析
  16. Windows设置本地DNS域名解析Hosts文件的方法
  17. python中输入一个数字x判断0~x间能被5除的个数_Python的面试题
  18. 二进制的位数,字节、字符
  19. PHP模板怎样安装,phpcms网站程序如何安装新的模板文件
  20. 基于Docker的Mysql主从配置搭建

热门文章

  1. audio 上一首 下一首 自定义样式_总有一首网易云,藏着你忘不掉的人。
  2. c语言字符串操作面试题,C语言常见字符串面试题.pdf
  3. 038_JDK的Iterable接口
  4. java css是什么_Java 之 CSS
  5. gpu超算算法_俄罗斯科学家:使用GPU将个人电脑转变为超级电脑
  6. 员工培训案例分析答案_在职员工培训管理办法案例
  7. 从零开始发布前端代码到服务器上_无服务器计算:让每行代码都能住上“经济适用房”...
  8. Could not get unknown property 'ANDROID_BUILD_SDK_VERSION'
  9. 巧妙的 排序+去重——C语言
  10. vlan的基本指令_10、Vlan的基本常用命令