10 2021 档案
摘要:某种意义上,在字典树上做KMP。 \(fail_i\)表示在字典树上第\(i\)个结点上,发现接下来无可匹配了以后,需要跳到哪个结点。洛谷日报2018#44 [水手hwy]强势图解AC自动机里的动图很不错,对\(fail\)指针相关解释得很清晰。 艹感觉当时跟洛谷日报学得太顺利没过啥坎没啥好提到的,
阅读全文
摘要:\(kmp_i\)定义: 定义一个字符串\(s\)的border为\(S\)的一个非\(S\)本身的字符串\(T\),有\(T\)既是\(S\)的前缀又是\(S\)的后缀。 如: \[S = abcdzzzabcd \]当然我们要的是最长border,于是有 \[T = abcd \]对于\(s\)
阅读全文
摘要:和EK一样的建图。 bfs()判是否还有增广路并将图分层,dfs()找增广路。 有关分层图: \(dpt_i\)表示\(s\)点到\(i\)点需要经过的路径条数。 找出所有的弧,满足 1.\(dpt_u+1=dpt_v\) 2.顺着该弧往下走,保证经过的边都满足条件1,能够达到\(t\) 这些弧组成
阅读全文
摘要:可持久化线段树,以求区间第k小为应用举例。其实区间第k小是权值线段树、可持久化线段树与前缀和的综合应用,奈何中者的基础应用过于鸡肋,懒得从那开始学。 考虑区间第k与与可持久化线段树的适配。 先离散化,开桶。 第\(i\)棵线段树的所有叶子结点,是储存了原序列\([1,i]\)区间所有值的一列桶;树上
阅读全文

浙公网安备 33010602011771号