[BZOJ3658]Jabberwocky 试题描述 平面上有n个点,每个点有k种颜色中的一个。你可以选择一条水平的线段获得在其上方或其下方的所有点,如图所示: 请求出你最多能够得到多少点,使得获得的点并不包含所有的颜色。 平面上有n个点,每个点有k种颜色中的一个。你可以选择一条水平的线段获得在其上 ...
分类:
其他好文 时间:
2017-01-30 12:34:18
阅读次数:
370
考虑将某线段下方的点取走:将所有点从低到高排序每扫描到一条水平线,对于上面每个点,找到它下面同色的前驱后继,统计中间点的个数然后再把线上所有点插入数据结构中最后再统计相邻的同色的点之间的点个数用动态开点的权值线段树+树状数组维护,时间复杂度$O(n\log n)$。考虑将某线段上方的点取走:把扫描线...
分类:
其他好文 时间:
2015-06-24 14:23:26
阅读次数:
82
题目大意:给定平面上n个点,一共有k种颜色,要求选定一条线段,并选取线段正上方或正下方的所有点,要求不能出现所有颜色的点,求最多选择多少点
正解是双向链表+树状数组?
让我们来点优雅的做法
由于不能出现所有颜色的点 因此一定有至少一种颜色不出现 我们可以枚举这个不出现的颜色
现在我们搞出所有极大子矩形
这个分治就好了。。。
假设我们现在求的是一条线段下方的点 那么我们考...
分类:
其他好文 时间:
2015-03-20 22:10:33
阅读次数:
176