共 3 页: 上一页 1 2 3 下一页
摘要:这篇博客不打算讲多么详细,网上关于后缀数组的blog比我讲的好多了,这一篇博客我是为自己加深印象写的。 给你们分享了那么多,容我自私一回吧~ 参考资料:这位dalao的blog 一、关于求SuffixArray的一些变量定义: 1. sa[i]=j,表示第i名的后缀从j开始 **存的是下标** 2. 阅读全文
posted @ 2019-11-03 00:53 LightHouseOfficial 阅读 (14) 评论 (0) 编辑
摘要:Simulate Anneal模拟退火算法,是一种用于得到最优解的随机化算法。 如果可以打一手漂亮的随机化搜索,也许当你面对一筹莫展的神仙题时就有一把趁手的兵器了。 这篇题解将教你什么?SA的基本思路,什么时候能用SA。 标题是浅谈,所以本篇博客参杂了些许个人简介,若有疑问或异议,欢迎提出指正。 我 阅读全文
posted @ 2019-11-01 22:14 LightHouseOfficial 阅读 (107) 评论 (0) 编辑
摘要:今天介绍一个神仙算法:Dsu On Tree[ 树上启发式合并 ] 这个算法用于离线处理询问子树信息,而且很好写。 但是在你没有理解它之前,这是个很鬼畜的算法。 理解后你才能真心感到它的美妙之处。 关键是它是有着媲美线段树合并的时间复杂度的“暴力”算法。 这里说一件事,我学这个东西时找了很多篇博客, 阅读全文
posted @ 2019-11-01 19:26 LightHouseOfficial 阅读 (23) 评论 (0) 编辑
摘要:这一篇博客将教你什么? 如何用LCT打延迟标记,LCT和线段树延迟标记间的关系,为什么延迟标记要这样打。 ——正片开始—— 学习这一篇博客前,确保你会以下知识: Link-Cut-Tree,普通线段树 当然,不会也没有关系,你可以先收藏这篇博客,等你学了以后再来看。 最好通过了这一道题:【模板】线段 阅读全文
posted @ 2019-10-31 17:31 LightHouseOfficial 阅读 (78) 评论 (2) 编辑
摘要:前面的文章介绍了如何用Tarjan算法计算无向图中的e-DCC和v-DCC以及如何缩点。 本篇文章资料参考:李煜东《算法竞赛进阶指南》 这一篇我们讲如何用Tarjan算法求有向图的SCC( 强连通分量 )已经如何缩点。 给定一张有向图,若对于图中任意两个节点x和y, 既有x到y的路径,又有y到x的路 阅读全文
posted @ 2019-10-30 21:17 LightHouseOfficial 阅读 (38) 评论 (0) 编辑
摘要:上一篇讲了如何应用Tarjan算法求出e-DCC和v-DCC。 那么这一篇就是e-DCC和v-DCC的应用之一:缩点。 先讲e-DCC的缩点。 我们把每一个e-DCC都看成一个节点,把所有桥边(x,y)看成连接编号为c[x]和c[y]的两个e-DCC间的边,这样我们就会得到一棵树或者森林(原图不连通 阅读全文
posted @ 2019-10-30 17:07 LightHouseOfficial 阅读 (70) 评论 (0) 编辑
摘要:这篇介绍如何用Tarjan算法求Double Connected Component,即双连通分量。 双联通分量包括点双连通分量v-DCC和边连通分量e-DCC。 若一张无向连通图不存在割点,则称它为“点双连通图”,不存在桥则称为“边双连通图”。 无向图的极大点双连通子图就v-DCC,极大边双连通子 阅读全文
posted @ 2019-10-30 16:36 LightHouseOfficial 阅读 (114) 评论 (0) 编辑
摘要:RobertTarjan真的是一个传说级的大人物。 他发明的LCT,SplayTree这些数据结构真的给我带来了诸多便利,各种动态图论题都可以用LCT解决。 而且,Tarjan并不只发明了LCT,他对计算机科学做出的贡献真的很多。 这一篇我就来以他名字命名的Tarjan算法可以O(n)求出无向图的割 阅读全文
posted @ 2019-10-30 13:08 LightHouseOfficial 阅读 (98) 评论 (0) 编辑
摘要:这一篇讲线段树优化建图。 发现网上关于线段树优化建图的博客很少而且讲的不是很详细,很多人会看得比较懵。 于是原本这一篇打算讲树链剖分的就改成讲优化建图了。 前置知识:动态开点线段树 看到标题你可能会感觉奇怪,线段树和建图有什么关系? 事实上,线段树优化建图就是利用两棵线段树,减少连边数量,达到降低复 阅读全文
posted @ 2019-10-29 20:00 LightHouseOfficial 阅读 (122) 评论 (12) 编辑
摘要:这一篇来讲讲线段树合并。 前置知识:动态开点线段树 还是一样先给一道例题:[JOI2012] Building2 题面是日文的,这里给出中文翻译: 有n个城市,它们组成了一棵树。 第i个城市有一座高度为Hi的建筑。 你需要选择一条尽量长路径,设路径中有k个点, 依次分别为i1,i2,⋯ik−1,ik 阅读全文
posted @ 2019-10-29 16:59 LightHouseOfficial 阅读 (31) 评论 (0) 编辑
共 3 页: 上一页 1 2 3 下一页