CF 464A No to Palindromes!
来源:互联网 发布:软件开发团队协作 编辑:程序博客网 时间:2024/04/30 09:18
给出的串是一个不包含回文子串的串,再找到一个字典序比该串大的不包含回文子串的新串。
新串是可以通过变换旧串得到的,从后往前遍历旧串,对每个字符进行枚举,枚举的时候需要判断该字符与它的前两个字符是否都不相等,若都不相等则这个枚举出的字符成立。
具体细节看代码。
#include<cstdio>char str[1005];int n,p;int main(){ int i; char ch; scanf("%d%d",&n,&p); scanf("%s",str); char limit='a'+p-1; for(i=n-1;i>=0;i--) { for(ch=str[i]+1;ch<=limit;ch++) { if(i>1) { if(ch==str[i-1] || ch==str[i-2]) { continue; } } else if(i>0) { if(ch==str[i-1]) { continue; } } str[i]=ch; int j; for(j=i+1;j<n;j++) { char tmp; for(tmp='a';tmp<=limit;tmp++) { if(j>1) { if(tmp==str[j-1] || tmp==str[j-2]) { continue; } } else if(j>0) { if(tmp==str[j-1]) { continue; } } str[j]=tmp; break; } } printf("%s\n",str); return 0; } } printf("NO\n"); return 0;}
0 0
- CF 464A No to Palindromes!
- CF 464 A No to Palindromes! 找到最后靠后的可变字母;
- Codeforces 464A No to Palindromes!(构造)
- codeforces 464A No to Palindromes! 贪心
- Codeforces 464 A. No to Palindromes!
- 【codeforces】 464A No to Palindromes!
- codeforces 464A No to Palindromes! 贪心
- Codeforces 464A No to Palindromes!
- Codeforces 464A No to Palindromes!
- codeforces 464A No to Palindromes! 贪心
- CF 265DIV2 C. No to Palindromes!
- No to Palindromes
- Codeforces 464A. No to Palindromes! (dp,向前推理,向后查询)
- Codeforces Round #265 (Div. 1) A No to Palindromes!
- 【CODEFORCES】 C. No to Palindromes!
- CF 568A(Primes or Palindromes?-暴力判断)
- CF 173D-- Palindromes
- Codeforces Round #265 (Div. 2) C.No to Palindromes!
- 如何修炼成大数据高手?
- 打印日期
- 简单工厂模式、工厂方法模式、抽象工厂模式的区别小结
- 打印星星*** php
- 编译apache时出错error: APR not found
- CF 464A No to Palindromes!
- 基于UDP的TFTP协议帧(五)
- 快递单打印软件
- 树莓派用户管理
- 【 线段树 】(结构体型)模板
- 《反欺骗的艺术》读后感
- patch修改
- android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context r
- 【移动开发】在Canvas上显示动画