#agc021d. [agc021_d]Reversed LCS
[agc021_d]Reversed LCS
题目描述
Takahashi 决定给他的母亲一个字符串。
定义一个字符串 的 value 为 和 ( 是将 反转得到的字符串)的最长公共子序列的长度。也就是说,value 是以下两个字符串相等的最长长度: 的一个子序列(可以非连续),和 的一个子序列(可以非连续)。
Takahashi 有一个字符串 。他想给他的母亲一个尽可能高的 value 值的字符串,因此他希望在 中至多更改 个字符,以便获得一个尽可能高的 value 值的字符串。找到可达到的最高 value 值。
约束条件
- 由小写英文字母组成。
- 是一个整数。
输入
从标准输入读入输入数据,格式如下:
输出
输出可达到的最高 value 值。
示例输入 1
示例输出 1
将第一个字符改为 c
得到 cbcabcabc
。令这个字符串为 , 和 的一个最长公共子序列是 cbabcbc
,长度为 。