回文树
live4m
老菜逼了
展开
-
回文树模板
回文树 具体功能代码注释里有 code: #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> using namespace std; const int maxm=1e5+5; struct Pam{ int nt[maxm][26];//下一个...原创 2019-09-10 22:31:20 · 133 阅读 · 0 评论 -
UVALive7041 The Problem to Slow Down You (回文树+dfs)
题意: 给两个字符串S、T 问有多少对子串A、B 满足A属于S串、B属于T串 且A==B同时A是回文串 分析: 对两个串建两个回文树,然后dfs求相同的回文串 当匹配到的时候 假设A串出现x次,B串出现y次 因为可以互相匹配所以答案累加xy code: #include<iostream> #include<algorithm> #include<cstdio>...原创 2019-09-11 12:14:39 · 156 阅读 · 0 评论 -
2019徐州网络赛G.Colorful String (回文树+dfs)
题意: 每个回文串的价值为回文串出现的次数乘上回文串中不同字符的个数 求一个串的价值 分析: 不会回文树直接没了 会的话应该是简单题 建树从两个树根dfs就行了 code: #include<iostream> #include<algorithm> #include<cstdio> #include<cstring> #define ll long...原创 2019-09-11 18:17:14 · 138 阅读 · 0 评论 -
hdu5658 CA Loves Palindromic (回文树)
问题描述: T组案例 每组案例: 给一个字符串s,q个询问 每个询问问LR区间内本质不同的回文串有多少个 1≤T≤10, 1≤length≤1000, 1≤Q≤100000, 1≤l≤r≤length 分析: 由题可知字符串长度很短只有1000,因此可以想到尝试直接LR枚举 但是Q很大(1e5) 如果每次都是区间1-len最多要1e8,直接爆了 但是因为长度只有1000,可以预处理所有区间的情况,...原创 2019-09-11 23:03:10 · 167 阅读 · 0 评论 -
bzoj2565 最长双回文串 (回文树)
Description 顺序和逆序读起来完全一样的串叫做回文串。比如acbca是回文串,而abc不是(abc的顺序为“abc”,逆序为“cba”,不相同)。 输入长度为n的串S,求S的最长双回文子串T,即可将T分为两部分X,Y,(|X|,|Y|≥1)且X和Y都是回文串。 Input 一行由小写英文字母组成的字符串S。 Output 一行一个整数,表示最长双回文子串的长度。 Sample Input...原创 2019-09-12 00:30:24 · 145 阅读 · 0 评论