扫描线
文章平均质量分 51
Clove_unique
All that you have lost can be won back bit by bit as long as you wish for it.
展开
-
[BZOJ1645][Usaco2007 Open]City Horizon 城市地平线(扫描线+线段树)
要积极面对每一个变数,因为每个变数都可能是你新生活的开始。原创 2016-08-09 08:05:38 · 1166 阅读 · 0 评论 -
[BZOJ4561][JLoi2016]圆的异或并(扫描线+splay)
题目描述传送门题目大意:在平面直角坐标系中给定N个圆。已知这些圆两两没有交点,即两圆的关系只存在相离和包含。求这些圆的异或面积并。异或面积并为:当一片区域在奇数个圆内则计算其面积,当一片区域在偶数个圆内则不考虑。题解这题并没有做出来。。想了很多很多种不科学的方法。。 首先对于一个圆来说,可以将其分成上半个圆弧和下半个圆弧,并且在扫描整个圆的过程中(对于每一个横坐标),两个圆弧的相对位置不变。对于圆原创 2017-04-22 18:48:36 · 1015 阅读 · 0 评论 -
[BZOJ3958][WF2011]Mummy Madness(二分+扫描线+线段树)
题目描述传送门题目大意:一个正方形的网格,你与木乃伊轮流移动(你走出第一步)。轮到你时,你可以移动到相邻的8个格子之一,或者站着不动。轮到木乃伊时,每个木乃伊会移动到其相邻的格子之一,使得他与你的欧几里得距离尽量小(假设你与木乃伊都站在格子的中心位置)。允许多个木乃伊同时占据同一个格子。 在每个单位时间内,你先做出移动,然后木乃伊做出移动。如果你与任何一个木乃伊站在同一位置,你会被抓住。当然,你试原创 2017-04-20 11:27:29 · 907 阅读 · 1 评论 -
[BZOJ1845][Cqoi2005] 三角形面积并(计算几何+扫描线)
题目描述传送门题目大意:给出n个三角形,求它们并的面积。题解求出所有直线的交点,然后按照这些交点的横坐标做扫描线 相邻两条扫描线中间的一定是若干个梯形,面积可以直接用(上底+下底)*高/2计算 但是需要注意的是三角形的一条边和y轴平行的情况,若这条边是三角形的起始边,当前扫描线和下一条扫描线之间的答案应该计算这条边;若这条边是三角形的终止边,当前扫描线和下一条扫描线之间的答案不应该计算这条边,特原创 2017-04-21 16:16:56 · 963 阅读 · 0 评论 -
[BZOJ4059][Cerc2012]Non-boring sequences(扫描线+线段树||暴力分治)
题目描述传送门题目大意:被称为是不无聊的,仅当它的每个连续子序列存在一个独一无二的数字,即每个子序列里至少存在一个数字只出现一次。给定一个整数序列,请你判断它是不是不无聊的。题解首先一个扫描线(树套树)的做法 对于每一个点i,假设前面和后面和它相同的数字的位置为pre和nxt,那么左端点在[pre+1,i],右端点在[i,nxt-1]中的子区间都是合法的。将[pre+1,i]看成横坐标,[i,nx原创 2017-04-21 11:28:46 · 910 阅读 · 0 评论 -
[BZOJ2161]布娃娃(扫描线+线段树)
题目描述传送门题目大意:第i个布娃娃有一个耐心值P[i]以及一个魅力值C[i],并且还有能够忍受的耐心值的上限R[i]以及下限L[i]。当一个布娃娃j满足L[j] ≤ P[i]并且P[i] ≤ R[j],那么布娃娃j喜欢布娃娃i。求第i个布娃娃想知道喜欢它的布娃娃中,魅力值第i大的布娃娃的魅力值是多少。题解将C离散,然后PLR实际上是一个东西可以看作一维 将区间拆成左端点和右端点,将所有的点排序,原创 2017-04-19 20:14:41 · 1858 阅读 · 2 评论 -
[BZOJ1818][Cqoi2010]内部白点(扫描线+线段树)
题目描述传送门题目大意:无限大正方形网格里有n个黑色的顶点,所有其他顶点都是白色的(网格的顶点即坐标为整数的点,又称整点)。每秒钟,所有内部白点同时变黑,直到不存在内部白点为止。统计最后网格中的黑点个数。 内部白点的定义:一个白色的整点P(x,y)是内部白点当且仅当P在水平线的左边和右边各至少有一个黑点(即存在x1 < x < x2使得(x1,y)和(x2,y)都是黑点),且在竖直线的上边和下边各至原创 2017-04-19 19:11:19 · 933 阅读 · 0 评论 -
[POJ1389]Area of Simple Polygons(扫描线+线段树)
你能用好你所拥有的每一分钟,你就是对自己最好的珍重。原创 2016-08-08 15:51:18 · 633 阅读 · 0 评论 -
[POJ1151]Atlantis(扫描线+线段树)
题目描述传送门题目大意:给出n个矩形求交的面积。题解扫面线的裸题 将纵坐标离散,并且将矩形分解成左右两个边界,按照横坐标排序 线段树的每一个节点[l,r]存储的是dis(l-1~r)这一段离散化之前的距离,维护一个标记表示区间被完全覆盖了几次,每一次修改update就行了 由于扫描线问题的特殊性,不存在在一个大区间里抠去一个小区间的问题,所以这个做法还是非常科学的代码#include<algo原创 2017-04-19 17:10:52 · 823 阅读 · 0 评论 -
[BZOJ1218][HNOI2003]激光炸弹(扫描线+线段树)
题目描述传送门题目大意:二维平面上有n个点每个点有一个权值,问用边长为R的正方形框住一些点获得的最大权值和是多少,正方形边界上的点不算在权值和之内。题解感觉和繁星满窗那道题差不多,将每一个点转化为一个正方形,意义为边长为R的正方形若左上角的点在这个范围内那么它能覆盖到这个点 不过这道题边界上的点都不算在内,所以相当于是要讲转化成的那个正方形缩小一圈,于是忘每两个点之间暴力插入一个点就行了代码#in原创 2017-04-19 15:45:52 · 1203 阅读 · 0 评论 -
[POJ2482]Stars in Your Window(离散化+扫描线+线段树)
任何值得拥有的东西,都值得等待。原创 2016-08-11 17:46:10 · 934 阅读 · 0 评论 -
[BZOJ4422][Cerc2015]Cow Confinement(差分+扫描线+线段树)
青春已逝,唯剩半边容颜;容颜已老,唯剩似火青春。原创 2016-08-11 18:15:55 · 1348 阅读 · 0 评论 -
[BZOJ2584][Wc2012]memory(扫描线+splay+线段树)
题目描述传送门题目大意:在二维平面中有n个线段,线段互不相交,每一次一个操作将一个线段向四个方向之一移走(也就是平移到无穷远处),如果移动的过程中被其他线段所阻挡则移动是不合法的。求:最早的一次不合法移动;构造一种合法的移动序列将所有线段移走题解首先考虑第二问,实际上所有的线段都按照任意一个固定的方向移动就是可以直接都移走的,所以我们需要将线段编号。因为线段均不相交,所以对于任意两条线段的所有横坐标原创 2017-04-22 19:05:48 · 1295 阅读 · 0 评论