POJ 2954 Triangle (pick 定理)
来源:互联网 发布:mac os 10.13 cdr 编辑:程序博客网 时间:2024/06/06 03:34
题目大意:给出三个点的坐标,问在这三个点坐标里面的整数坐标点有多少个(不包含边上的)
匹克定理:I = (A-E) / 2 + 1;
A: 表示多边形面积
I : 表示多边形内部的点的个数
E: 表示在多边形上的点的个数
// Time 0ms; Memory 164K
#include<iostream>#include<cstdio>#include<cmath>using namespace std;typedef struct point {int x,y;point(int xx=0,int yy=0):x(xx),y(yy){}}vector;point a,b,c;vector u,v,w;vector operator - (point p,point q){return vector(p.x-q.x,p.y-q.y);}int cross(vector p,vector q){return p.x*q.y-p.y*q.x;}int gcd(int x,int y){static int t;for(;t=y;y=x%y,x=t);return x;}int main(){int i,A,I,E;while(scanf("%d%d%d%d%d%d",&a.x,&a.y,&b.x,&b.y,&c.x,&c.y)!=EOF && (a.x || a.y || b.x || b.y || c.x || c.y)){u=a-b;v=b-c;w=c-a;A=abs(cross(u,v));E=abs(gcd(u.x,u.y))+abs(gcd(v.x,v.y))+abs(gcd(w.x,w.y));I=(A-E)/2+1;printf("%d\n",I);}return 0;}
- POJ 2954 Triangle (pick 定理)
- POJ 2954 Triangle (Pick定理)
- POJ 2954 Triangle(Pick定理)
- POJ 2954 || Triangle ( pick定理
- POJ 2954 Triangle (Pick定理)
- POJ 2954 Triangle(PICK定理)
- POJ 2954 Triangle Pick定理+gcd
- poj 1265 Area 计算几何Pick定理 && poj 2954 Triangle
- POJ 2954 Triangle(pick定理,边上整点数)
- poj 2954 pick定理
- poj 2954 pick定理
- POJ 2954 pick定理
- poj 2954(pick定理)
- POJ 2954 Triangle pick公式
- Poj2954 Triangle (Pick定理)
- poj2954 Triangle【Pick定理】
- HDOJ 1705/POJ 2954 叉积+Pick定理
- poj 1265(pick 定理)
- python循环for,range,xrange;while
- hdu 4611 Balls Rearrangement 多校第二场
- GCD 扩展GCD 快速GCD 模线性方程 模线性方程组 单独求欧拉函数 递推求欧拉函数
- 贪心——NYOJ 题目236 心急的C小加
- hdu 3790 最短路径问题 (dijkstra算法+memset()用法)
- POJ 2954 Triangle (pick 定理)
- 安卓调试时ADB server didn't ACK的终极解决办法
- 马的走法
- 配置普通用户有使用sudo命令的权限
- Android apk反编译和odex转dex
- XMPP协议的原理介绍
- hdu 2870
- 文件锁(Filelock) 与锁定映射文件部分内容
- POJ2948--Martian Mining