计算几何 《模板》
来源:互联网 发布:ipad mini4必备软件 编辑:程序博客网 时间:2024/06/11 18:50
#include<iostream>#include<cstdio>#include<string>#include<algorithm># include<cmath>using namespace std;struct point{ double x,y; point(double x=0,double y=0):x(x),y(y) {}};typedef point Vector;Vector operator +(Vector A,Vector B){ return Vector(A.x+B.x,A.y+B.y);}Vector operator -(Vector A,Vector B){ return Vector(A.x-B.x,A.y-B.y);}Vector operator *(Vector A,double p){ return Vector(A.x*p, A.x*p);}Vector operator /(Vector A,double p){ return Vector(A.x/p, A.x/p);}const int esp=1e-10;bool operator <(const point& a,const point& b){ return a.x<b.x||(a.x==b.x && a.y<b.y);}int dcmp(double x){ if(fabs(x)<esp) return 0; else return x<0?-1:1;}bool operator ==(const point& a,const point& b){ return dcmp(a.x-b.x)==0 && dcmp(a.y-b.y)==0;}double Dot(Vector A, Vector B){ return A.x*B.x+A.y*B.y;}double Length(Vector A){ return sqrt(Dot(A,A));}double Angle(Vector A, Vector B){ return acos(Dot(A,B))/Length(A)/Length(B);}Vector Rotate (Vector A,double rad){ return Vector(A.x*cos(rad)-A.y*sin(rad), A.x*sin(rad)+A.y*cos(rad));}double cross(Vector A, Vector B){ return A.x*B.y-A.y*B.x;}double Area2(point A, point B, point C){ return cross(B-A, C-A);}int main(){ return 0;}
0 0
- [模板]计算几何模板
- 经典计算几何模板
- 计算几何模板2
- 计算几何 模板
- 计算几何模板
- 计算几何经典模板
- 计算几何模板
- ACM计算几何模板
- 计算几何模板
- 计算几何模板
- 计算几何模板
- 计算几何 模板
- 计算几何初步模板
- 计算几何三维模板
- 二维计算几何模板
- 计算几何模板
- 计算几何模板
- 计算几何的模板
- HTML中添加背景音乐<bgsound>
- 程序员自我学习自我培训指南
- 黑马程序员——Java IO—字节流—LineNumberInputStream
- Qt 自定义model实现文件系统的文件名排序
- 普里姆算法(Prim)
- 计算几何 《模板》
- 泛泰A880S再次救砖成功,记录一下
- 类
- 用intel驱动提升android模拟器速度(windows和OSX)
- HDU 4002 欧拉函数
- Windows的SHELLCODE编写高级技巧
- IOS UIKit框架类之视图动画和坐标系介绍
- 9种基本算法总结
- 用HTML5为你的网页添加音效(兼容Firefox 3.5+, IE 6-9, Safari 3.0+, Chrome 3.0+, Opera 10.5+)