virus(P6698)

首先,这个形式长得像ACAM上DP

一个朴素的想法是\(f_i\)表示字符i最短合法串长

但是这无法转移,考虑问题在,字符串的拼接

\(f_{i,s,t}\)表示i号字符,从s开始,匹配到tminlength

转移没发直接转,考虑借用辅助数组

枚举i,s令\(g_{j,x}\)表示,从s走了i步,在xminlength

转移:$g_{j,x}+f_{b_{i,j},x,y} \implies g_{j+1,y} $

但是,这个转移,好像有后效性

观察到,这个转移是最优化,可以考虑类似sssp的优化

具体的,一开始有0/1的值,每次拿出一个更新后,把被更新的重新考虑

spfa是可以的,dijstra不太确定

复杂度很大,但是spfa常数小大概是\(O(G\sum_i|b_i|tot^3)\)

posted on 2026-08-19 23:00  Grylls_117  阅读(6)  评论(0)    收藏  举报