![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算几何
文章平均质量分 64
Lazines_by
好吧,我要工作了
展开
-
HDU5120Intersection(两圆环相交的面积)
HDU5120Intersection(两圆环相交的面积)这里写链接内容我的: 这个是两个圆环相交的面积,题意是:给出两个同心的圆环,他们的小圆大圆的半径都一样,只是坐标不相等,之后要求求两个圆环的相交的面积,这个要套用利用到两个圆的相交面积的一个模板,感觉很流畅。 之后再利用这个关系式: Area圆环==intersection_area圆环A的大圆&圆环B的原创 2016-07-25 10:41:26 · 1007 阅读 · 0 评论 -
uvalive 7366(二分 + 两向量的交点 + 向量的旋转)
题意:给出一个三角形的三个点,然后求使得图中的三个角相等的三角形内的点的坐标。 思路:因为有单调性,所以对角进行二分,然后用两个角求出第三个角,看是否符合。 #include using namespace std; #define PI acos(-1.0) typedef struct Node { double x,y; Node operator原创 2017-10-23 21:31:18 · 254 阅读 · 0 评论 -
poj3528,hdu3662三维凸包模板题
#include #include #include #include #include #include #define PR 1e-8 #define N 510 using namespace std; struct TPoint { double x,y,z; TPoint() {} TPoint(double _x,double _y,double _z):x(_原创 2017-09-26 10:48:27 · 191 阅读 · 0 评论 -
graham模板整理
感觉以前写的graham代码风格太差了,然后又重新整理了一份 struct Node { double x,y; int pos; double val; }a[maxn],s; double across(Node x,Node y,Node z)//z在x,y连线的顺时针为负 { return (x.x - y.x) * (z.y - y.y) - (原创 2017-09-26 10:34:21 · 248 阅读 · 0 评论 -
hihocoder1582(凸包)2017北京网赛
好久没写凸包,忘记了很多细节,导致赛场没做出来。 题意,给出一些坐标点,任务是把这些点分成A类和B类,使得无法用一条直线分隔开这些点,输出YES即每个点放在A类还是B类(任意分)。如果做不到,就printf(“NO\n”); 对于大于三个点时,跑一遍凸包。 如果凸包点个数==n;说明所有点都在凸包边上,选择两个不相邻的点归为一类即可。 如果凸包点个数 n==3是特判是原创 2017-09-26 10:23:46 · 285 阅读 · 0 评论 -
FZU 2140
思维: 点都在这个正三角形的弧上,当初一直是这个convex hull 搞死了,不知道是凸包以为是每个三角形的面积,,,,,,,, #include #include #include #include using namespace std; const int maxn = 100 + 10; #define INF 0x3f3f3f3f int n; struct Node {原创 2017-06-24 10:56:34 · 210 阅读 · 0 评论 -
FZU 2148
题意:给出30个点,判断这些点组成凸四边形的数量; 思路:对于a,b,c,d,如果组成的是 凹四边形,他们的组成的三角形的面积就会存在S abc = S abd + S acd + S bcd 的情况,所以直接判断是否会出现这种情况就行。 #include #include #include #include using namespace std; const int maxn =原创 2017-06-24 10:09:34 · 223 阅读 · 0 评论 -
swust 最小凸包的面积
http://acm.swust.edu.cn/problem/0249/ 求凸包的最小的面积有一个公式: 知道公式,直接裸过; #include #include #include #include using namespace std; const int maxn = 1000 + 10; #define INF 0x3f3f3f3f #de原创 2017-04-06 13:06:58 · 499 阅读 · 0 评论 -
zoj1453凸包入门
这道题几乎是纯的“凸包问题”,也让我对于凸包有了入门级的认识。 我看到的比较好的算法是Graham扫描法,用笔模拟了一下该算法,大致就对该算法有所体会了,所以碰到一个新算法,一定要不怕麻烦,通过模拟该算法深入了解其中的奥秘 Graham扫描法 Graham扫描法的具体流程: 1.原创 2017-04-04 20:03:28 · 303 阅读 · 0 评论 -
hdu5761Rower Bo(计算几何)
hdu5761Rower Bo这里写链接内容题意: 一个在(0,a)的点要到(0,0)处去,他有两个速度,一个始终指向x轴正方向,一个始终指向(0,0),求到达原点的时间。我的: 这个题,开始写的时候划了两个方程,是dy关于θ和dt的方程,于是我苦思冥想去想要找到θ和t的关系,那么的话就可以在这个微分方程就只剩下dy,t,dt,那么就可以积分一下求出时间t来。一直没有找到。没写出来。 看了题原创 2016-07-27 11:27:25 · 634 阅读 · 0 评论 -
HDU1798 Tell me the area(两圆的相交面积)
New~ 欢迎参加2016多校联合训练的同学们~ Tell me the area这里写链接内容我的: 这个题虽然说是很简单,但是我觉得实现起来就有点麻烦,然后看了一下别人的代码,感觉某些人的这个格式挺好的,所以就借用了一下咯,谢谢这个哥们。我的:#include <iostream> #include <cstdio> #include <algorithm> #include <stri原创 2016-07-25 10:04:15 · 291 阅读 · 0 评论 -
uva12535求圆上所有的点能形成的锐角三角形的数量
题意:给出圆上每个点的角度,然后询问这些点能形成多少个锐角三角形。 思路:反向思考,总的三角形的个数C(n,3) -- 直角三角形 - 钝角三角形 = 锐角三角形的个数 对于直角三角形和钝角三角形来求的话,就是以直角为中介,如果产生的是直角的话,那么枚举的这个点对应的那个点的连线经过圆心,也就是每次二分找到一个于180最接近的点,那么这两个点直接的所有的点都能抽出两个与枚举的那原创 2017-11-30 21:07:14 · 439 阅读 · 0 评论