随笔分类 - OI——题解
摘要:"洛谷题目传送门" 思路分析 维护子树最值还是第一次写QwQ 因为子树的最值会变化,所以不能简单地把最值记下来,还要维护一个平衡树,把每个子树的最大值扔进去,来资磁插入、删除和查询最值。 然后我就懒得手写了,毕竟Splay作为平衡树时与LCT中的Splay写法不一样,不能混用。 于是要去学习STL啦
阅读全文
摘要:"洛谷题目传送门" 思路分析 题意就是要维护同色连通块大小。要用LCT维护子树大小就不说了,可以看看 "蒟蒻的LCT总结" 。 至于连通块如何维护,首先肯定可以想到一个很naive的做法:直接维护同色连通块,每次更改时暴力修改父边和子边。。。。。。 来个菊花图吧!(话说我真的好弱,前几天ZJOI的时
阅读全文
摘要:Update:原来的洛谷U21715已成坑qwq 已经被某位管理员巨佬放进公共题库啦!又可以多一个AC记录啦! "洛谷题目传送门" 其实也可以到 "这里" 交啦 思路分析 动态维护树的重心 题目中说到国家的首都会选在某个使得其他城市到它距离之和最小的城市,那不就是树的重心了嘛。树的重心性质真的很好,
阅读全文
摘要:"洛谷题目传送门" 思路分析 在一个图中,要求路径上最大边边权最小,就不难想到最小生成树。而题目中有删边的操作,那肯定是要动态维护啦。直接上LCT维护边权最小值(可以参考一下 "蒟蒻的Blog" ) 这时候令人头疼的问题又冒出来了。。。。。。删掉一条边以后,又不好从树断开后的两边选出最小的边在连上。
阅读全文
摘要:"洛谷题目传送门" 和魔法森林有点像,都是动态维护最小生成树(可参考一下 "Blog的LCT总结" 相关部分) 至于从小到大还是从大到小当然无所谓啦,我是从小到大排序,每次枚举边,还没连通就连,已连通就替换环上最小的一条边,可以保证最优。如果已经构成了生成树,就可以更新答案,因为当前枚举到的一定是生
阅读全文
摘要:"洛谷题目传送门" 闲话 这是所有LCT题目中的一个异类。 之所以认为是LCT题目,是因为本题思路的瓶颈就在于如何去维护同颜色的点的集合。 只不过做着做着,感觉后来的思路(dfn序,线段树,LCA)似乎要喧宾夺主了。。。(至少在代码上看是如此) 思路分析 一个一个操作来(瞎BB中,这种思路模式并不具
阅读全文
摘要:"洛谷题目传送门" 的正解算法对我这个小蒟蒻真的还有点思维难度。洛谷题解里都讲得很好。 考试的时候一看到300000就直接去想各种带log的做法了,反正不怕T。。。。。。 我永远只会有最直观的思路(~~最差的程序效率~~) 题目相当于每次让我们找区间中上数第一个比当
阅读全文
摘要:"洛谷题目传送门" 正解是树状数组维护dfn序上的前缀和,这样的思路真是又玄学又令我惊叹( ~~我太弱啦,根本想不到)~~Orz各路Dalao 今天考了这道题,数据范围还比洛谷的小,只有(害我复制粘贴一波交上去RE),让我很放心地去想树剖了。 然而尴尬的是我不会树剖,却先学了LCT(~~
阅读全文
摘要:在XZY&XZZ巨佬的引领下,一枚蒟蒻终于啃动了这道题。。。。。。 这次还是第一次写LCT维护边权,还要化边为点,思路乱七八糟的,写起来也不顺手,还好调了许久终于AC啦。 贪心排序按一个关键字从小到大枚举边,维护另一个关键字的最小生成树,这样的思路真是太巧妙啦。(然而没有题解的滋养我什么也干不了)
阅读全文
摘要:闲话 莫队算法似乎还是需要一点分块思想的。。。。。。于是我就先来搞分块啦! 膜拜hzwer学长神犇%%%Orz 这九道题,每一道都堪称经典,强力打Call! "点这里进入" 算法简述 每一次考试被炸得体无完肤之后,又听到讲题目的Dalao们爆出一句 数据不大,用分块暴力搞一下就AC了 的时候,我就会
阅读全文
摘要:"洛谷题目传送门" 写完有一段时间了,发现板子忘记存在了这里。。。。。。 算法简述 一种字符串算法,高效求出以每个字符为对称中心的最长回文串长度。 然后,就可以进一步求出全串中最长回文串的长度,以及全串回文子串总数。 "这篇博客" 已经讲的很清楚了。 有一个小细节还需要提一下。为了方便判
阅读全文
摘要:"洛谷题目传送门" %%%TPLY巨佬和ysner巨佬%%% "他们的题解" 思路分析 具体思路都在各位巨佬的题解中。这题做法挺多的,我就不对每个都详细讲了,泛泛而谈吧。 大多数算法都要用kruskal把最小生成树弄出来,因为要求次小生成树。至于为什么次小一定只在最小的基础上改变了一条边,我也不会严
阅读全文
摘要:"洛谷题目传送门" LCT维护子树信息常见套路详见 "我的总结" 闲话 题目摘自WC模拟试题(by Philipsweng),原题目名Wander,~~“山村游历”是自己搞出来的中文名。~~ 数据自测,如有问题欢迎反馈 ~~对耐心的人来说,这道题是个裸题(当我什么也没说)~~ 题面 题目描述 在一个
阅读全文
摘要:LCT维护子树信息的思路总结与其它问题详见 "我的LCT总结" 思路分析 动态连边,LCT题目跑不了了。然而这题又有点奇特的地方。 我们分析一下,查询操作就是要让我们求出砍断这条边后,x和y各自子树大小的乘积。 掌握了LCT如何维护虚子树信息和后,做法就很清晰了。split(x,y)后,输出x的虚子
阅读全文
摘要:orz "TPLY" 巨佬,题解讲的挺好的。 这里重点梳理一下思路,做一个小小的补充吧。 写可持久化线段树,叶子节点维护每个位置的fa,利用每次只更新一个节点的特性,每次插入个节点,这一部分思路还是很轻松。关于此部分的其它问题可以参考下我的 "可持久化线段树总结" 一开始,写惯了常规并查
阅读全文
摘要:"洛谷题目传送门" AC自动机入门—— "yyb巨佬的博客" AC自动机入手经典好题~~(虽然年代久远)~~ 有了fail指针,trie树就不是原来的树型结构了,我们可以把它叫做trie图,由父节点向子节点连的边和fail代表的边构成(都是单向边)。 最模板的AC自动机,就是直接匹配字符串。然而这题
阅读全文
摘要:"洛谷题目传送门" 先膜一发yyb巨佬 orz 想学ac自动机的话,推荐一下 "yyb巨佬的博客" ,本蒟蒻也是从那里开始学的。 思路分析 裸的AC自动机,这里就不讲了。主要是这题太卡时了,尽管时限放的很大了。。。。。。 用传统方法匹配时,每走到一个新位置,都是要统计答案的。怎么统计呢?暴力跳$fa
阅读全文
摘要:"洛谷题目传送门" 关于LCT的问题详见 "我的LCT总结" 思路分析 首先分析一下题意。对于每个弹力装置,有且仅有一个位置可以弹到。把这样的一种关系可以视作边。 然后,每个装置一定会往后弹,这不就代表不存在环么? 于是,一个森林的模型被我们建出来了。 考虑到有修改弹力值的操作,也就是要断边和连边,
阅读全文
摘要:"洛谷题目传送门" 关于LCT的其它问题可以参考一下 "我的LCT总结" 一道LCT很好的练习放懒标记技巧的题目。 一开始看到又做加法又做乘法的时候我是有点mengbi的。 然后我想起了模板线段树2。。。。。。(相信各位Dalao一定做过这道题) 这里的维护懒标记方法很像。除了翻转标记以外还要维护乘
阅读全文
摘要:为了优化体验(其实是强迫症),蒟蒻把总结拆成了两篇,方便不同学习阶段的Dalao们切换。 LCT总结——应用篇戳这里 概念、性质简述 首先介绍一下链剖分的概念(感谢laofu的讲课) 链剖分,是指一类对树的边进行轻重划分的操作,这样做的目的是为了减少某些链上的修改、查询等操作的复杂度。 目前总共有三
阅读全文