Description 某校由于历史悠久,校园中有大量的名胜古迹。为了更好地保护这些古迹,学校决定用篱笆将这些古迹围起来。 现在已知有p个地点的古迹需要保护。这些古迹可以看做二维平面上的整数点。有n个点可以作为篱笆的端点,这些端点的坐标也为二维平面上的整数。端点用1到n的整数编号。 有m对端点之间可 ...
分类:
其他好文 时间:
2017-09-15 16:38:59
阅读次数:
202
2965: 保护古迹 Description 某校由于历史悠久,校园中有大量的名胜古迹。为了更好地保护这些古迹,学校决定用篱笆将这些古迹围起来。 现在已知有p个地点的古迹需要保护。这些古迹可以看做二维平面上的整数点。有n个点可以作为篱笆的端点,这些端点的坐标也为二维平面上的整数。端点用1到n的整数编 ...
分类:
其他好文 时间:
2017-09-05 01:39:38
阅读次数:
225
首先要将这个图连通,方法是通过扫描线+set求出每个连通块最高的点上方的第一条边,然后向交点连边。 然后把边拆成两条双向边,每次找到一条没走过的边,找到极角排序后它的反向边的后继,直到回到这条边。 根据叉积可以求出面积,如果面积非负,那么就说明找到了一个封闭区域。 然后再进行一次扫描线,找到一个点上 ...
分类:
其他好文 时间:
2016-03-30 01:39:12
阅读次数:
272
题目大意:给定一个平面图以及一些点,求将1个、2个、3个……点围起来所需要的最小代价
首先平面图转对偶图
枚举每个点的每条没有走过的出边进行DFS,每到达一个点之后向来时的边逆/顺时针转到的第一条边继续深搜,这样可以搜出所有的区域(包括最外层的无限区域)
我们可以用面积的符号来判断出最外层的无限区域
接下来我们需要判断一个点在哪个区域,由于点只有10个,因此暴力枚举即可
判断一个点是否在...
分类:
其他好文 时间:
2015-01-31 12:22:48
阅读次数:
195
题解:这个模型很水,不需要极角序神马转对偶图,直接乱搞就行。
然后目的是把图割开,那么只需要跑S->T最短路就行。
要做平面图转对偶图不妨去这篇。
【BZOJ2965】保护古迹
平面图转对偶图,暴力,网络流
还有就是某人说堆很快233,我弱弱的优先队列竟然,嘿嘿。
@jiangyuze831
BZOJ
2007 NOI 2010 海拔 平面图最小割->最短路SPFA...
分类:
其他好文 时间:
2015-01-30 09:07:55
阅读次数:
217
题目大意:给出一个平面图,这个平面图中分布着一些点,可以用平面图中的边将一些点围住,问围住k个点的最小花费是多少。
思路:这题重点是平面图转对偶图。做法不难理解。先将所有的边拆成两条,枚举所有的边,若这个边没有被标记过,那么就对这条边进行搜索,弄出来以这个边为一边的平面区域,可以顺时针或者逆时针。将所有边挂在这条边的起点上,在所有点上按照每条边的极角排序,每次找的时候找大于(或小于)当前...
分类:
其他好文 时间:
2015-01-28 09:57:22
阅读次数:
358
题意:自己看去吧。
题解:如果不考虑这道题的某些小数据范围,
那么正解应该是:
首先平面图转对偶图,
然后扫描线处理名胜古迹
过程中运用到邪恶的平衡树(就算是set也依然恶心)
或者用神奇方法Ⅰ判断(cheat)一个名胜古迹在哪些域里面
[注: 域]:就是一些线段围起来的一块啦。
然后用神奇方法Ⅱ(cheat
然后是裸最小割噗。
所幸:
一、
名胜古...
分类:
其他好文 时间:
2015-01-28 09:57:01
阅读次数:
621