基础算法题
Thomas_ZQQ@Runespoor
这个作者很懒,什么都没留下…
展开
-
【题解】bzoj 3307: 雨天的尾巴 线段树合并
DescriptionN个点,形成一个树状结构。有M次发放,每次选择两个点x,y对于x到y的路径上(含x,y)每个点发一袋Z类型的物品。完成所有发放后,每个点存放最多的是哪种物品。Input第一行数字N,M接下来N-1行,每行两个数字a,b,表示a与b间有一条边再接下来M行,每行三个数字x,y,z.如题Output输出有N行每i行的数字表示第i个点存放最多的物品是哪一种,如果有...原创 2019-02-07 14:36:04 · 260 阅读 · 0 评论 -
【bzoj】3745: [Coci2015]Norma
题意:n <= 5e5题解:** 首先,想到确定最大值,最小值的区间一起统计。因为是统计所有区间,第一想法是枚举右端点,维护所有左端点的答案用单调栈分别维护最小值,最大值,把贡献拆开讨论一下,需要用线段树维护mx(i) * mn(i), mx(i) * mn(i) * i,mx(i) * i,mn(i) * i,mx(i),mn(i) 6个和。因为更新的时候要么更新最大值,要么更新...原创 2019-01-30 07:11:47 · 226 阅读 · 0 评论 -
【题解】【CF666E】Forensic Examination(后缀自动机,线段树合并)
题解看 yyb的博客翻译:给定一个串S和若干个串Ti每次询问S[pl…pr]在Tl…Tr中出现的最多次数,以及出现次数最多的那个串的编号。**parent树上线段树合并很常规但是有个疑问:这个在trie树上进行一次节点映射,trie上节点被原串覆盖次数是均摊的啊,所以线段树合并复杂度会不会有问题,比如parent树深度子树出现位置特别大需要对线段树合并的复杂度再学习一下****...原创 2019-01-30 22:26:14 · 397 阅读 · 0 评论 -
【题解】codeforces 793G - Oleg and chess 线段树优化建边--最大流
题意一个网格图,删除一些矩形中的格子每行每列只能放一个棋子,问最多放多少个n , q <= 1e4题解标准的网络流模型是行列分开连边对矩形扫描线可持久化线段树维护当前可行的格子。矩形差分,每次修改新建节点,如果一段区间都被删除则不连边。因为矩形没有重叠,非常好写!一开始还以为有高论,结果是简单的模型总结:这样简单的题必须快速写,基本的模型,没有细节,只需要写的时候...原创 2019-03-06 18:58:34 · 270 阅读 · 0 评论