题目描述
回文串的定义:正读和反读都一样的字符串。
现在已经存在一个不包含回文串的字符串,字符串的字符都是在英语字母的前N个,且字符串不包含任何长度大于等于2的回文串;
请找出下一个字典序的不包含回文串的、字符都是在英语字母的前N个、且长度相同的字符串。
如果不存在,请输出NO。
输入描述
输入包括两行。
第一行有一个整数:N(1<=N<=26),表示字符串的每个字符范围都是前N的英语字母。
第二行输入一个字符串(输入长度<=10000),输入保证这个字符串是合法的并且没有包含回文串。
输出描述
输出下一个字典序的不包含回文串的、字符都是在英语字母的前N个、且长度相同的字符串;
如果不存在,请输出”NO“。
用例
| 输入 | 3 cba |
| 输出 | NO |
| 说明 |
该博客介绍了华为在线测评(OD)中的一道算法题,涉及寻找字典序下一个不包含回文串的字符串。题目要求字符串由前N个英语小写字母组成,且长度相同,不包含任何长度大于等于2的回文串。解题关键在于理解如何保证字符串无回文串并找到下一个字典序的字符串。博主提供了分析和解题思路,包括确保相邻字符不重复以及从最后一个字符按字典序遍历来找到符合条件的字符串。
订阅专栏 解锁全文
1418

被折叠的 条评论
为什么被折叠?



