
计算几何
文章平均质量分 81
ez_lcw
这个作者很懒,什么都没留下…
展开
-
【SDOI2013】保护出题人(斜率,凸壳)
显然对于第 iii 关的答案为:ansi=maxj∈[1,i](si−sj−1xi+(i−j)d)ans_i=\max_{j\in [1,i]}\left(\dfrac{s_i-s_{j-1}}{x_i+(i-j)d}\right)ansi=j∈[1,i]max(xi+(i−j)dsi−sj−1)(其中 si=∑j=1iajs_i=\sum\limits_{j=1}^ia_jsi=j=1∑iaj)然后把这个看成是 (xi+i⋅d,si)(x_i+i\cdot d,s_i)(xi原创 2021-08-02 15:22:54 · 128 阅读 · 0 评论 -
【XSY3920】简单的几何题(几何,凸包)
题面简单的几何题题解易知 v≠0v\neq 0v=0,那么直接考虑条件:(xiu2+xi−uv−yiv)b2≤(xia2+xi−ab−yib)v2xiu2+xi−uv−yivv2≤xia2+xi−ab−yibb2\begin{aligned}\left(x_iu^2+x_i-uv-y_iv\right)b^2&\leq \left(x_ia^2+x_i-ab-y_ib\right)v^2\\\frac{x_iu^2+x_i-uv-y_iv}{v^2}&\leq\frac{x原创 2021-03-20 20:43:58 · 136 阅读 · 0 评论 -
【XSY3812】鱼死网破(计算几何?)
题面题解先对于每个 xxx 轴上方的点,找到所有墙,按照极角排序,合并重合的墙。对于每一个端点引一条射线,左端点的射线权值是 +1+1+1,右端点是 −1-1−1,可以发现一个点不能看到的点数等于这个点左边的射线的权值和。观察到这些直线都经过至少一个墙的端点,可以将这些直线按照经过的端点分类,每一类内极角排序。然后查询的时候对于每一堵墙二分查询就好了。时间复杂度 O(k(n+m)logn)O(k(n+m)\log n)O(k(n+m)logn)。代码如下:#include<bits原创 2021-01-12 13:36:56 · 172 阅读 · 0 评论 -
【BZOJ1818】【CQOI2010】【XSY2428】内部白点(树状数组+扫描线)
先把所有点的xxx坐标离散化。然后分别将所有点按xxx、yyy排序。这里以按xxx排序为例,对于xxx坐标相同的两个点,我们把它们连成一条线段。那么按yyy坐标排序也一样,把yyy坐标相同的两个点也连成一条线段。那么连出来后的图就是这样的:那么横竖线段的所有交点(图中蓝点)即为可以变dark的点,因为它左右有dark点,上下都有dark点,符合变dark条件。那么我们怎么维护交点呢?我们...原创 2019-10-03 13:39:33 · 192 阅读 · 0 评论 -
半平面交学习笔记
半平面交学习笔记半平面半平面:一条直线把一个平面分成的两个平面,如图,直线ABABAB把平面分成左(上)半平面和右(下)半平面的两个平面。那我们如何判断是在哪一个平面呢?有两种判定方法:对于直线ABABAB,我们可以通过AAA、BBB的坐标算出其解析式,不妨设为ax+by+c=0ax+by+c=0ax+by+c=0,那么当CCC在左平面时,将CCC的坐标代入直线ABABAB的解析式,...原创 2019-08-22 20:59:18 · 359 阅读 · 0 评论 -
矢量&凸包学习笔记
矢量&凸包学习笔记矢量矢量(向量)的定义和表示法定义:一条有方向的线段。表示:如下图。那么我们把这一条矢量写作:AB→\overrightarrow{AB}AB,它的长度为aaa,记作∣AB→∣\left|\overrightarrow{AB}\right|∣∣∣AB∣∣∣。矢量的运算矢量的加减遵循三角形法则。加:根据三角形法则,∣AC→∣=∣AB→∣+∣BC→∣...原创 2019-08-14 21:58:19 · 348 阅读 · 0 评论