#L3001. #3001. 「JOISC 2015 Day 3」AAQQZ
#3001. 「JOISC 2015 Day 3」AAQQZ
#3001. 「JOISC 2015 Day 3」AAQQZ
题目描述
译自 JOISC 2015 Day3 T1「AAQQZ」,感谢 PoPoQQQ 提供翻译。
IOI2015 将要在哈萨克斯坦举行。哈萨克斯坦的「哈萨克」是用字母的 QAZAQ 拼写的。这个 QAZAQ 是回文。知晓这一点的 JOI 君出于对回文的喜爱,准备用眼前的字符串制作一个回文串。
JOI 君找到了一个长为 的字符串 ,每个字符可以用 之间的一个整数来表示。从这个字符串第 个位置到第 个位置的字符串 称作子串 。如果子串 翻转后和原来相等,即 $(S_i,S_{i+1},\cdots ,S_j)=(S_j,S_{j-1},\cdots ,S_i)$,则称子串 是回文的。JOI 君进行如下操作来制作一个回文串:
- 首先,选择 的一个子串。不妨设选择的子串为 ;
- 将子串 按照升序排序,得到 ;
- 在 中,用 替换 ,得到 。我们可以这样描述这三项操作:JOI 君选择一个子串 ,将 按升序排序得到 ,最终得到 $S'=(S_1,S_2,\cdots ,S_{i-1},T'_i,T'_{i+1},\cdots ,T'_j,S_{j+1},\cdots ,S_N)$;
- 在这之后,寻找 中的回文子串。
JOI 进行如上操作后,想要得到最长的回文子串。
现在 JOI 君将字符串 交给了你,请你输出 JOI 君进行如上操作后能得到的最长回文子串的长度。
输入格式
第一行两个空格分隔的正整数 和 ,分别表示字符串的长度和字符集大小;
接下来 行,第 行一个正整数 ,表示字符串 中第 个位置的字符。
输出格式
输出一行一个正整数,表示 JOI 君进行操作后能得到的最长回文子串的长度。
样例 1
输入
12 26
26
17
17
17
1
26
1
17
19
20
1
14
输出
8
解释
样例输入中,,,。JOI 君可以选择子串 ,将其按照升序排列,得到 ,这样子串 就是回文了。这个回文长度为 ,是最长可能得到的回文子串。
若转化为字母序列,则原串为 ZQQQAZAQSTAN。
样例 2
输入
4 3
1
2
3
2
输出
3
对于这组样例,,可以选择子串 进行排序,得到 ,子串 就是回文了。这个回文长度为 ,为最长可能得到的回文。
数据范围与提示
对于全部数据,,。
本题有两个子任务。只有该任务下测试点全部通过才能得到该子任务的分数。
| Subtask | 附加限制 | 分数 |
|---|---|---|
| 1 | ||
| 2 | 无附加限制 |