摘要: 首先,我们需要读懂这个图是什么图。 第一,忽略外面的环,由“任意两点可到达且路径唯一”的条件可知这是一棵树。 第二,因为每个点的度数是三,所以如果只考虑中间的树,除了 $k$ 以内的点都是叶子,其他的点度数都是三。 考虑什么样的树有很多点度数是三:完全二叉树。但是这个和完全二叉树还有个不同,就是完全 阅读全文
posted @ 2023-05-30 22:52 jucason_xu 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 本质不同的算法主要有两种:对子图大小根号分治和类启发式均摊。此外还有很多实现上的差别。 #### 对子图大小根号分治 在线做法: 我们发现,把每个颜色的边和它们的顶点取出为一个子图,所有子图大小的和是 $O(n)$ 级别的。那么我们就可以根号分治。 首先,要预处理每个颜色子图下的连通块。可以用并查集 阅读全文
posted @ 2023-05-30 14:42 jucason_xu 阅读(40) 评论(0) 推荐(0) 编辑
摘要: Z 函数是的意义是对于字符串的后缀 $i$,其最长的前缀使得存在原串的一个前缀和它相同。 我个人认为 Z 函数是简单于 KMP 的,因为 KMP 的思想是利用前面的答案递归调用计算新的位置,而 Z 函数是简单的递推,只需要一个原先计算的结果就能得出答案,不需要递归。 Z 函数的核心思想是匹配段思想, 阅读全文
posted @ 2023-05-30 10:21 jucason_xu 阅读(444) 评论(0) 推荐(1) 编辑