Pick定理
来源:互联网 发布:淘宝网渔具店 编辑:程序博客网 时间:2024/05/17 07:14
我的心愿是世界和平!
公式:2s=2a+b-2。皮克定理是指一个计算点阵中顶点在格点上的多边形面积公式,其中a表示多边形内部的点数,b表示多边形边界上的点数,s表示多边形的面积。
应用:第一行输入测试组数o,接下来每组第一行输入移动步数m,接下来的m行输入两点a,b,分别代表在x,y轴的移动距离。
#include<stdio.h>int gcd(int x,int y){ if(y==0) return x; return gcd(y,x%y);}int bianjiedian(int a,int b){ a=a>0?a:-a; b=b>0?b:-b; return gcd(a,b);}int mianji(int x,int y,int a,int b){ return x*b-a*y;}int main(){ int i,o,t,m,a,b,x,y,aa,bb,s; scanf("%d",&o); t=0; while(o--) { s=0; bb=0; x=0; y=0; scanf("%d",&m); for(i=0; i<m; i++) { scanf("%d%d",&a,&b); bb+=bianjiedian(a,b);//计算在边界上的点. a+=x; b+=y; s+=mianji(x,y,a,b);//计算切割成小三角形的面积. x=a; y=b; } s=s>0?s:-s; aa=(s+2-bb)/2;//利用Pick定理求在多边形内部的点. double ss; ss=1.0*s/2.0; printf("Scenario #%d:\n%d %d %.1lf\n\n",++t,aa,bb,ss); } return 0;}
题目来源 :http://acm.sdibt.edu.cn:8080/vjudge/contest/view.action?cid=1813#problem/I
阅读全文
0 0
- pick 定理
- Pick定理
- Pick定理
- Pick定理
- pick定理
- AOJ F pick定理
- pick定理及其证明
- pick定理--zzuli1668
- poj 1265(pick 定理)
- Poj1265 Area (Pick定理)
- Poj2954 Triangle (Pick定理)
- poj1265(pick定理)
- HDU 3775 pick 定理
- POJ 1265 Pick定理
- poj 1265 pick定理
- poj 2954 pick定理
- poj 2954 pick定理
- POJ 2954 pick定理
- 归并排序算法(递归与非递归)
- JQUERY中attr()和css()的区别
- js实现map功能
- 文章标题
- 使用Typescript开发node.js项目——简单的环境配置
- Pick定理
- SDUT-数据结构实验之图论八:欧拉回路
- Python中的常用模块
- 题目: 一个数如果恰好等于它的因子之和,这个数被成为”完数” 例如:6=1+2+3.请编程找出1000以内的完数
- 15.odoo入门——工作遇到的odoo的一些细节和javascript实现数据库操作后跳转页面
- MySQL百万级数据量查询优化
- 读写文本文件
- c#浅拷贝/深拷贝和内存分配
- 12.IDA-虚函数和虚表