【算法】时间倒流
文章平均质量分 63
cz_xuyixuan
这个作者很懒,什么都没留下…
展开
-
【BZOJ4855】【JSOI2016】轻重路径
【题目链接】点击打开链接【思路要点】考虑将问题离线,将删点变成加点。由题,一条从任意一个点到根的路径上至多有\(O(LogN)\)条轻边,而加入一个点不会使其到根路径上的重边变成轻边,因此加入一个点至多改变\(O(LogN)\)个点的轻重划分。对原树进行树链剖分,用树状数组支持询问某一个点当前的子树大小以及一条原树重链上轻边的位置。每加入一个点后找到该点到根路径上所有的轻边,并更新它们即可。还有一...原创 2018-04-13 20:03:22 · 842 阅读 · 0 评论 -
【CodeForces】Manthan, Codefest 18 (Div. 1 + Div. 2) 题解
【比赛链接】 点击打开连接 【题解链接】 点击打开链接 **【A】**Packets 【思路要点】 可以用 1,2,4,...,2i,N−2i+1+11,2,4,...,2i,N−2i+1+11,2,4,...,2^i,N-2^{i+1}+1 构造一组最优的可行方案。 其中 iii 为使得 N−2i+1+1>0N−2i+1...原创 2018-09-05 11:34:15 · 368 阅读 · 0 评论 -
【省内训练2018-11-23】Graph
【思路要点】离线询问,为每一条边找到一个删除时间。将过程倒过来,按照删除时间倒序加入每一条边。我们将加入的边分为两类,加入后连接两个不同的联通块的称为树边,剩余的边称为非树边。显然,树边的加入不会产生新的双连通分量,因此,我们可以预先将所有的树边加入图中,并处理出形成的森林中每个节点的深度等信息。之后,我们每加入一条非树边,就会将森林中一条树链上所有的节点合并起来,可以通过并查集实现...原创 2018-11-24 16:58:31 · 289 阅读 · 0 评论 -
【AtCoder】AtCoder Grand Contest 032 题解
【比赛链接】点击打开链接【题解链接】点击打开链接【A】 Limited Insertion【思路要点】考虑时间倒流,对于一个位置 iii ,若 ai=ia_i=iai=i ,则可以将其删去,问是否能将序列删空。不难发现每次删除最大的 iii ,使得 ai=ia_i=iai=i 是唯一的最优策略,模拟之,若无法操作则无解。时间复杂度 O(N2)O(N^2)O(...原创 2019-03-26 17:03:00 · 740 阅读 · 0 评论