题目大意:给定一个数轴上n个点,每个点有一种颜色,一共k种颜色,求一个最短的区间,包含所有k种颜色
卡了一段时间0.0 一开始想二分答案啥的 后来发现数据范围太大写不了0.0 后来去找题解才发现尼玛真巧妙
维护一个堆 将每种颜色的第一个珠子加入堆 然后不断把最左侧的珠子取出,加入该种颜色的下一个 同时更新ans
果然这么大数据范围还是要用堆这种常数小的数据结构啊0.0
我手写了堆却开了ST...
分类:
其他好文 时间:
2014-10-21 17:48:09
阅读次数:
241
题目大意:给定一个长度为n的序列,求当子序列s的左端点在[a,b],右端点在[c,d]时的最大中位数
其中当序列长度为偶数时中位数定义为中间两个数中较大的那个
很难想的一道题 具体题解见 http://blog.csdn.net/acm_cxlove/article/details/8566093 说的很详细
区间处理那里 [b,c]是必选的 [a,b)和(c,d]每段取最大加和 否则re恒...
分类:
其他好文 时间:
2014-10-20 17:19:36
阅读次数:
162
题目大意:自行脑补。
思路:二分答案。
但是如何判断?
我们定义递归函数judge(a,b,k)表示长为a,宽为b的蛋糕能否被分为k块。
那么每次我们只需枚举划分方法即可,即分为多少块和多少块,横着切还是竖着。
当k=1时判断,返回即可。
这其中以当前二分的答案Mid作为参数。
这样就可以了。
Code:
#include
#include
#include ...
分类:
其他好文 时间:
2014-10-17 13:54:36
阅读次数:
196
链接:http://poj.org/problem?id=2289
题意:有n个人,m个分组,每个人可以分配到一些组别,问如何分能使得人数最多的组别人数最少。
思路:这道题二分+网络流也可以做,我这里是二分图多重匹配的做法。因为一个组别是一对多的关系,所以是多重匹配,我们二分多重匹配的限制,得到最小的限制可使二分图匹配,这个限制就是答案。
网上找的模板
#include
#...
分类:
其他好文 时间:
2014-10-16 13:13:52
阅读次数:
190
题目大意:给出一个序列,单点修改,询问区间第k大。
思路:如果不带修改,那么划分树就可以解决,但是划分树是静态的树,不支持修改。带修改的主席舒其实就是外层fenwick套内层权值线段树,但是权值线段树必须动态开节点。然后修改的时候就像树状数组修改那样,每次修改logn个权值线段树。查询的时候也一样,返回logn个权值线段树统计的和。
最后为了求区间第k大,还需要二分答案。
C...
分类:
其他好文 时间:
2014-10-15 18:11:31
阅读次数:
271
题目大意:给定一棵树,可以删掉k条边,求删掉后森林中所有树直径的最大值的最小值
最大值最小,典型的二分答案
此题我们二分树的直径,每次二分DFS一次,对于每个节点统计出所有子树删边后的dis,排序,贪心删掉最大的,直到最大的两个子树相加不会超过二分的答案为止
时间复杂度O(nlog^2n)
老子的二分居然写挂了。。。桑不起啊啊啊啊
#include
#include
#include
#...
分类:
其他好文 时间:
2014-10-13 23:22:27
阅读次数:
183
题意:n个城市(n
思路:首先边的费用可以通过Tarjan求桥之后求得(利用桥的性质),然后就是二分答案了!对于每个点,如果有个儿子不能维护,那么不可行,否则,试着让儿子去维护边权,如果不可行,只能让父亲承担。
#include
#include
#include
#include
#include
#include
#include
#include
#include
u...
分类:
其他好文 时间:
2014-10-12 14:17:38
阅读次数:
115
题目大意:有n个路由器,他们由n-1条边连接(形成一棵树)。每一个路由器有一个延时值。有两种操作:
1.查询树上x,y两点之间的路径上第k大的权值是多少
2.修改x位置的权值为y
思路:当我大概想到怎么做这个题的时候,所想的时间复杂度已经达到了O(nlog^4n),偷偷的瞄了一眼数据范围...(N,Q
“没事,写吧,我10多秒就过了。。。”
秒就过了。。。就过了。。。过了。。。了...
分类:
Web程序 时间:
2014-10-09 15:39:18
阅读次数:
281
上学期刷过裸的RMQ模板题,不过那时候一直不理解>_=l)3 {4 int mid=(l+r)/2; //mid: r-l5 if (calc(mid)) //calc(mid): 判断mid答案是否符合要求6 ...
分类:
其他好文 时间:
2014-10-07 17:45:53
阅读次数:
217
Long Long MessageProblem's Link:http://poj.org/problem?id=2774Mean:求两个字符串的最长公共子串的长度。analyse:前面在学习后缀数组的时候已经做过一遍了,但是现在主攻字符串hash,再用字符串hash写一遍。这题的思路是这样的:1...
分类:
其他好文 时间:
2014-10-04 23:50:17
阅读次数:
265