#MXCSPJ0303. MXCSP-J第三套模拟卷T3 字符串(string)
MXCSP-J第三套模拟卷T3 字符串(string)
T3 字符串(string)
首先来进行分析,上面情况下字符串满足规则。题意中的规则过于复杂,我们从简单的情况来进行分析。首先对于长度为 的连续子串,只要两个字符不同就满足。对于长度为 的,要求三个字符各不相同。当考虑长度大于 的连续子串时,我们发现只要其内部没有不合法的长度为 的子串,它就一定合法。例如 是不合法的子串,那么其内部一定有长度为 的不合法子串,如 。
有了上述性质,我们尝试使用动态规划解决该题。设 表示前 个字符中,第 个字符为 ,第 个字符为 ,且到第 个字符为止的串合法。转移时保证下一个字符与前两个字符不同即可。