一、题目
二、解法
建出回文自动机,自动机上的每一个节点都代表一个回文串,我们考虑一个串不是另一个串子串的问题。
分情况考虑,首先选的节点必须不同。然后就是两边个去掉一个字符(重复若干次)不能相等,反应到自动机上就是没有父子关系。还有一种就是不能是前缀后缀回文串,反应到自动机上就是树上没有父子关系。
构建一个有向图,把回文树和上的边当成有向边加进去(自动机上下连上),问题就变成了最长反链问题,即选最多的点,不存在任意两个点有路径,根据定理,把原问题转化为最小链覆盖,用网络流求解即可。
关于最小连覆盖,给出材料。
蒟蒻作者自然是给不出代码的,实现就靠各位了。
来源:CSDN
作者:C202044zxy
链接:https://blog.csdn.net/C202044zxy/article/details/104105763