计算几何
文章平均质量分 54
alan_cty
蒟蒻一只
别打脸(⊙o⊙)哦
展开
-
【GDOI2014模拟】Pty爬山
Description平面上有n个点,我们把ai和ai+1连上边(保证x坐标递增),从每个点出发,我们会朝着我们当前能看到的最高点走去。如果在某个点,看到了比当前还要高的点,那我们会向这个点走去。(高度相同,我们规定右边的高) 求从每个点出发,走到最高点的步数。 n<=2*10^5Solution首先,我们需要求出,每个点所能看到的最高点。 分为左侧和右侧两种情况讨论。 我们设f[i]表示i原创 2016-05-25 12:44:22 · 1338 阅读 · 0 评论 -
【GDOI2013模拟1】屏保
Description平面直角坐标系内有n个点,第i个点的坐标为(i,Hi),顺次连接这n个点。 现在给出一条直线y=h,求这条直线以下的由这条直线和其他线段围成的图形的面积。 兹瓷单点修改。 n<=10^5,hi<=1000语文不好,放图来讲讲道理。 左边这张图的答案是3.75,右图为6. Solution考虑hi和hi+1所连的线段。 若hi<h<hi+1h_i<h<h_{i+1},原创 2016-07-05 21:41:09 · 547 阅读 · 0 评论 -
【WinterCamp 2013】数三角形
Description给出二维平面上的n个点,求这n个点形成的三角形中,有多少个三角形包含原点。 n<=1e5,坐标绝对值<=1e5Solution第一道计算几何留影_ (:з」∠) _ 首先我们将这n个点按与x轴正半轴的夹角从小到大排序 然后我们统计每个点往右能形成多少个不包含原点的三角形个数 也就是与这个向量的夹角在pi以内的点的个数 这个可以用叉积的正负性扫一遍得到 然后直接用总数原创 2017-07-05 19:53:00 · 344 阅读 · 0 评论 -
【HNOI2016模拟4.4】Stage
Description N,M<=1e3Solution考虑每个点被观察到的概率 这样很难算我们可以计算每个点不被观察到的概率 这个等价于把这个点和所有观察点拉出来一起做凸包,这个点出现在凸包上的概率 那么我们可以枚举两条边,计算这两条边出现的概率 就是这两条边外部的点全部不出现 这些点把所有观察点关于这个点做极角排序后是连续的一段 所以可以用一个数据结构维护一段点的(1-p)的积原创 2017-07-14 21:59:06 · 353 阅读 · 0 评论 -
【GDOI2018模拟7.7】寻找天哥
Description n<=3000Solution答案相当于求E(∫R04π3x3dx)E(\int_{0}^{R}{4\pi \over 3}x^3dx)也就是求E(π3R4)E({\pi \over 3}R^4) 现在就是要找到一种方法求E(R4)E(R^4) 发现这个东西等价于求E(((∑i=1naixi)2+(∑i=1nbixi)2+(∑i=1ncixi)2)2)E(((\sum_原创 2017-07-07 20:02:53 · 554 阅读 · 0 评论 -
【GDOI2018模拟7.6】仰望星空
Description由于原题看了好多遍才真正理解题意,这里讲一个简化版本 给出平面上的一个圆和n个点 现在要再这n个点之间两两连边 每个点只能被连一次,只有圆内和圆外之间距离不超过d的点可以互相连边 且如果存在三个圆内的未被连边的点x,y,z,与圆外一点w的距离不超过d 现在若想连接w和y,并且x与z的连线与w,y的连线相交,那么这个连线是不合法的 求最大的连线数目和方案 n<=1e原创 2017-07-06 22:03:15 · 581 阅读 · 0 评论 -
【NOI2015模拟1.17】⑨
DescriptionCirno闲着无事的时候喜欢冰冻青蛙。 Cirno每次从雾之湖中固定的n个结点中选出一些点构成一个简单多边形,Cirno运用自己的能力能将此多边形内所有青蛙冰冻。 雾之湖生活着m只青蛙,青蛙有大有小,所以每只青蛙的价值为一个不大于10000的正整数。 Cirno很想知道每次冻住的青蛙的价值总和。因为智商有限,Cirno将这个问题交给完美算术教室里的你。 因为爱护动物,所原创 2018-01-04 17:38:44 · 447 阅读 · 0 评论 -
[LOJ6360]复燃「恋之埋火」
Description 古明地恋(koishi)和小石子(koishi)是好朋友。 旧地狱的空中散布着许多颗小石子。恋恋想找出一个位置,使得这个位置离最远的小石子的距离尽可能小。 需要注意的是,这里的空间可能是高维空间。 “在这幻想乡里,可不能被常理所束缚!”——东风谷早苗 对于100%的数据,n≤20000,m≤5,0≤n\leq 20000,m\leq 5,0\leqn≤20000...原创 2018-08-17 21:58:26 · 540 阅读 · 0 评论 -
[CF886F]Symmetric Projections
Description 给出二维平面上的n个点,求有多少条经过原点的直线满足,所有点在其上的投影是对称的。 若有无数条输出-1 n<=2000 Solution 根据一些脑洞+结论我们知道对称中心一定是原点集的重心在直线上的投影 如果两个点关于重心中心对称那么这两个点在任意一条直线上都是对称的,删去 枚举两个点,钦定它们对称,容易发现直线是唯一的,这样我们得到了O(n^2)...原创 2018-08-23 21:31:12 · 494 阅读 · 0 评论