1 /*
 2      题意:给定一个字符串中没有任何长度>1的回文子串!求按照字典序的该串的下一个字符串
 3      也不包含长度>1的任何回文子串!
 4
 5      思路:从最低位进行枚举,保证第i位 不与 第 i-1位和第 i-2位相同就好了!那么因为前边i-1
 6      位没有长度>1的回文子串,那么前i位也不会出现!最后将最后边的字符按照相同的原则补齐就好了!
 7 */
 8 #include<iostream>
 9 #include<cstdio>
10 #include<cstring>
11 #include<algorithm>
12
13 using namespace std;
14
15
16 char ch[1005];
17
18 int main(){
19     int n, p;
20     while(scanf("%d%d", &n,  &p)!=EOF){
21         ch[0]='0';
22         ch[1]='0';
23         int up='a'+p-1;
24         scanf("%s", ch+2);//从字符串第二位输入是因为第一位,第二位也要枚举
25         bool flag=false;
26         for(int i=++n; i>=2 && !flag; --i){//枚举每一位
27             for(int j=ch[i]+1; j<=up && !flag; ++j){//每一位应该出现的字符(从小到大)
28                 ch[i]=j;
29                 if(ch[i]!=ch[i-1] && ch[i]!=ch[i-2]){//保证三者互不相同
30                     flag=true;
31                     for(int k=i+1; k<=n; ++k){//补全后面
32                         int cc;
33                         for(cc='a'; cc<=up; ++cc)
34                             if(cc!=ch[k-1] && cc!=ch[k-2]) break;
35                         ch[k]=cc;
36                     }
37                 }
38             }
39         }
40         if(flag) printf("%s\n", ch+2);
41         else printf("NO\n");
42     }
43     return 0;
44 } 

转载于:https://www.cnblogs.com/hujunzheng/p/3964726.html

codeforce No to Palindromes!(枚举)相关推荐

  1. Codeforces Round #315 (Div. 2)

    题目传送:Codeforces Round #315 (Div. 2) A. Music 题意较难懂.只是仅仅要推公式就好了 注意到S+(q - 1) * t = q * t; 仅仅须要t等于S就可以 ...

  2. codeforce 589B枚举

    2017-08-25 12:00:53 writer:pprp 很简单的枚举,但是我调试了很长时间,出现各种各样的问题 /* theme:cf 589B writer:pprp declare:枚举 ...

  3. codeforce Pashmak and Buses(dfs枚举)

    1 /* 2 题意:n个同学,k个车, 取旅游d天! 3 要求所有的学生没有两个或者两个以上的在同一辆车上共同带d天! 输出可行的方案! 4 5 对于d行n列的矩阵,第i行第j列表示的是第i天第j个同 ...

  4. P1217 [USACO1.5]回文质数 Prime Palindromes(技巧+暴力枚举+线性筛)

    技巧:就是偶数位的回文数字一定不是质数---------证明:奇数位之和sum1==偶数位之和sum2的数字可以被11整除.(11除外,这是一个坑点) 最高位,最低位必须是 1, 3, 7, 9 暴力 ...

  5. 【CodeForces - 569C】Primes or Palindromes? (思维,分析范围,暴力枚举判断)

    题干: Rikhail Mubinchik believes that the current definition of prime numbers is obsolete as they are ...

  6. 【ZOJ - 3715】Kindergarten Election(枚举得票数,贪心)

    题干: At the beginning of the semester in kindergarten, the n little kids (indexed from 1 to n, for co ...

  7. luogu 题解 P1217 【[USACO1.5]回文质数 Prime Palindromes】

    题目描述 因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围 [a,b] (5 < a < b 100,000,00 ...

  8. 洛谷 P1217 [USACO1.5]回文质数 Prime Palindromes 题解 C/C++

    知识点: 回文数有两种 一种是单数位数,abcba,一种是双数位数,abccba 而双数位数是质数的只有11,即偶位回文数全不是质数除了11:所以不需要枚举到1亿,到1千万就好了 以下几种方法供参考 ...

  9. day 20 暴力枚举

    P3392 涂国旗 涂最少的格子(枚举) #include <bits/stdc++.h> using namespace std;int n, m, ans = 1e9; char a[ ...

最新文章

  1. Jupyter 官方神器:可视化 Debug 工具!
  2. 使用php连接mysql数据库_PHP使用mysql与mysqli连接Mysql数据库用法示例
  3. 228. Summary Ranges
  4. 数据结构笔记(一) 线性表(C语言描述)
  5. 电子换向电动机行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  6. 一个IE动画图标的小例子
  7. 设计模式之GOF23责任链模式
  8. java爬虫乱码_网络爬虫的乱码处理
  9. 图片自适应页面大小的简单HTML代码
  10. 迷你世界显示服务器错误,迷你世界登陆失败怎么办-迷你世界登陆未成功_牛游戏页游...
  11. ff14服务器显示位置,ff14服务器
  12. 在html中怎样写年月日的代码,注册时选择出生年月日的html+JS
  13. pygame 精灵精灵组
  14. linux基础-快速入门
  15. HTML播放华为云视频流,华为云点播服务视频管理功能强大,上云就是省心
  16. 为什么软件系统上云是大势所趋?
  17. javascript 关于年龄计算
  18. python把.CSV文件转换成.JSON格式文件并格式化储存
  19. 8个经典数据分析模型
  20. 创新密码532,YonSuite打造“SaaS+PaaS+生态”新模式

热门文章

  1. Refusing to install package with name “vue-i18n“ under a package
  2. vue中设置height:100%无效的问题及解决方法
  3. 解决idea修改html、js、css后,浏览器不能同步加载
  4. 调整eclipse、SpringToolSuite4编辑器的内存大小以及显示
  5. Springboot部署到Tomcat,可以不带项目名进行访问
  6. Spring 集成 mybatisPlus
  7. 修改Gradle本地仓库的位置 方法
  8. 好用的idea插件,一个字:真TM太爽了!
  9. Leetcode 707.设计链表
  10. 单一窗口关区备案_深圳跨境电商企业进出口备案,赶紧码下学习