#P14021. [ICPC 2024 Nanjing R] 博德之跃 2
[ICPC 2024 Nanjing R] 博德之跃 2
题目描述
您有一个由小写英文字母组成的字符串 。您需要对 执行若干次操作,直到它变为空字符串。每次您可以执行以下三种操作中的一种:
- 删除 的第一个字符。
- 删除 的最后一个字符。
- 选择 的一个好子串 ,并将 替换为 。
一个非空字符串 被称为 的好子串,当且仅当 , 是 的前缀,且 的反串是 的后缀。长度为 的字符串 的反串是另一个长度为 的字符串 。
求最多能执行多少次第 种操作。
输入格式
有多组测试数据。第一行输入一个整数 表示测试数据组数。对于每组测试数据:
第一行输入一个由小写字母组成的字符串 ()。
保证所有测试数据 之和不超过 。
输出格式
每组测试数据输出一行一个整数,表示最多能执行多少次第 种操作。
3
aaaa
abbaabba
xy
3
4
0
提示
对于第一组样例数据:$\texttt{aaaa} \xrightarrow{\text{op. 3}} \texttt{aaa} \xrightarrow{\text{op. 3}} \texttt{aa} \xrightarrow{\text{op. 3}} \texttt{a} \xrightarrow{\text{op. 2}} \varnothing$。
对于第二组样例数据:$\texttt{abbaabba} \xrightarrow{\text{op. 3}} \texttt{abbaabb} \xrightarrow{\text{op. 1}} \texttt{bbaabb} \xrightarrow{\text{op. 3}} \texttt{bbaab} \xrightarrow{\text{op. 1}} \texttt{baab} \xrightarrow{\text{op. 3}} \texttt{baa} \xrightarrow{\text{op. 1}} \texttt{aa} \xrightarrow{\text{op. 3}} \texttt{a} \xrightarrow{\text{op. 1}} \varnothing$。