随笔分类 -  字符串——回文自动机

摘要:题意翻译 给定一个长度为n的小写字母串。问你有多少对相交的回文子 串(包含也算相交) 。 输入格式 第一行是字符串长度n(1<=n<=2*10^6),第二行字符串 输出格式 相交的回文子串个数%51123987 题解 直接判断相交的回文串很难 那我们考虑找出所有不相交的回文串 数量就是所有以$i$结 阅读全文
posted @ 2018-09-12 18:53 bztMinamoto 阅读(344) 评论(0) 推荐(1)
摘要:前言 刚学完manacher就来学回文自动机…… 感觉好像(板子)也不是很难(背)? 前置知识:Manacher(也不一定非要因为和这个没啥关系),知道自动机是个啥以及怎么建 简述 回文树和回文自动机指的是同一个东西 是由某西伯利亚人于2014夏发明的 这东西主要是用于计数,计算回文串的个数以及种类 阅读全文
posted @ 2018-09-11 21:55 bztMinamoto 阅读(3267) 评论(6) 推荐(4)
摘要:传送门 回文自动机的好题啊 先建一个回文自动机,然后记$dp[i]$表示转移到$i$节点代表的回文串的最少的需要次数 首先肯定2操作越多越好,经过2操作之后的串必定是一个回文串,所以最后的答案肯定是由一个回文串+不断暴力添加得来,那么答案就是$min(ans,dp[i]+n-len[i])$ 然后对 阅读全文
posted @ 2018-09-11 21:14 bztMinamoto 阅读(217) 评论(0) 推荐(0)
摘要:传送门 听说有大佬用manacher$O(n)$过此题……太强啦…… 说一下PAM的做法吧。(看了题解之后发现)蛮简单的 我们肯定要先建出回文自动机的 然后如果是枚举每一个节点暴跳fail指针肯定得T 那么我们对于每一个节点记录一个$trans[i]$,表示小于等于它长度一半的节点 这个可以在建自动 阅读全文
posted @ 2018-09-11 19:12 bztMinamoto 阅读(198) 评论(0) 推荐(0)
摘要:传送门 话说回文自动机我自己都还没搞懂呢…… 等到时候会了再来填坑 阅读全文
posted @ 2018-09-11 18:43 bztMinamoto 阅读(168) 评论(0) 推荐(0)

Live2D