---计算几何
BAJim_H
比孤独更可悲的事情,就是根本不知道自己很孤独,或者分明很孤独,却把自己都骗得相信自己不孤独。
展开
-
[JZOJ5953] 生死之境 [CodeForces 886F] Symmetric Projections【计算几何】
Description在二维平面上给出n个格点,坐标范围在[−106,106][-10^6,10^6][−106,106]需要统计有多少条过原点的直线,满足所有点在这条直线上的投影成中心对称n≤1000n\leq 1000n≤1000Solution考虑这个对称中心是什么。有结论:对称中心一定为所有点的重心(∑xn,∑yn)({\sum x\over n},{\sum y\over n...原创 2018-11-06 15:26:15 · 257 阅读 · 0 评论 -
[JZOJ2724] 圆【计算几何】【数据结构】【DP】
Description二维坐标平面内有n个圆,第i个圆圆心在(Xi,Yi),半径为Ri,权值Vi。任何两个圆都不会相交(也不会相切),但是圆与圆之间可能存在包含关系。当我们在一个圆里面的时候,我们必须经过它的边界一次,才能走出这个圆。对于不同的两个圆A、B,如果可以从A到B且经过不超过K次边界,则称A、B是连通的。现在的问题是:对于所有的连通的一对圆(A,B),权值差的绝对值最大有多少。即找到...原创 2019-02-21 15:24:34 · 339 阅读 · 0 评论 -
[JZOJ3976] ⑨ 【计算几何】【树状数组】
DescriptionCirno闲着无事的时候喜欢冰冻青蛙。Cirno每次从雾之湖中固定的n个结点中选出一些点构成一个简单多边形,Cirno运用自己的能力能将此多边形内所有青蛙冰冻。雾之湖生活着m只青蛙,青蛙有大有小,所以每只青蛙的价值为一个不大于10000的正整数。Cirno很想知道每次冻住的青蛙的价值总和。因为智商有限,Cirno将这个问题交给完美算术教室里的你。因为爱护动物,所以...原创 2019-02-19 17:15:10 · 257 阅读 · 0 评论 -
[JZOJ6037]【GDOI2019模拟2019.3.1】鸽子 [CodeForces 780H] 【无实现】【计算几何】
DescriptionSolution这题感觉十分的熟悉感觉是一道神仙题?其实没有那么难考虑鸽子的x坐标与y左边分别关于时间t的参数方程x(t),y(t)x(t),y(t)x(t),y(t),它是有n段的分段一次函数考虑f(t)=dis((x(t),y(t)),(x(t+Δ),y(t+Δ))),Δ=Cmf(t)=dis\left((x(t),y(t)),(x(t+\Delta),y...原创 2019-03-01 20:58:31 · 447 阅读 · 0 评论 -
[JZOJ6073]【GDOI2019模拟2019.3.20】河【DP】【几何】
DescriptionSolution我们考虑一条x=INF的垂直于x轴的直线lll。对于一条河,考虑与这条直线的交点,显然只与斜率大小有关,斜率相同时才与截距有关。可以发现,对于任意一条河,它能够污染的范围都是一个区间我们将所有的河流按照斜率为第一关键字,截距为第二关键字排序,这就是它们与直线lll的交点的顺序。容易发现,一条河流能影响的区间下端就是截距比它大的且斜率最小的那个,...原创 2019-03-20 20:19:25 · 211 阅读 · 0 评论 -
[JZOJ6093]【GDOI2019模拟2019.3.30】星辰大海【计算几何】【半平面交】
Description给出平面上n个点,其中1号点是可以移动的,但是移动的范围不能改变任意三个点所成的角的状态([0,π),[π,π],(π,2π][0,\pi),[\pi,\pi],(\pi,2\pi][0,π),[π,π],(π,2π])。求可移动的范围。n≤500000n\leq 500000n≤500000Solution画一个图可以感受出来,实际上1号点移动的范围就是不能越过其...原创 2019-03-31 14:54:17 · 209 阅读 · 0 评论 -
【学习小记】半平面交——排序增量法
Preface之前的半平面交的算法是基于分治和凸包合并的,分治两边,计算出半平面交,再合并凸包。而这种排序增量法好写简洁常数小,适合在比赛中使用。Text为了避免半平面交区域无界的情况,我们在无穷远处四个方向加上四个半平面的限制。可以看出,有限的半平面交是一个凸包方便起见,我们用点+向量的形式来表示一个半平面,向量的左手向就是半平面的方向。定义半平面的极角为向量的极角,我们将半平面按...原创 2019-03-31 15:18:59 · 335 阅读 · 0 评论 -
[JZOJ6217] Area【计算几何】
Description给定平面上的n个点,记为A1...nA_{1...n}A1...n现在给出q组询问,每次给出一个向量P,你需要找一个区间[L,R][L,R][L,R],使得2∑i=lrSΔOPAi2\sum\limits_{i=l}^{r}S_{\Delta OPA_i}2i=l∑rSΔOPAi最大,输出这个最大值。n<=100000,q<=1000000,坐标绝对...原创 2019-06-30 22:15:07 · 201 阅读 · 0 评论