小白书之困难的串回溯
来源:互联网 发布:淘宝飞利浦官方旗舰店 编辑:程序博客网 时间:2024/05/21 04:43
如果一个字符串包含俩个相邻的重复子串,则称它是“容易的串”,其他串称为"困难的串“,输入正整数N和L,输出
由前L个字符组成的,字典序第k小的困难的串。
我们只需要判断当前串的后缀,而非所有的子串是否满足条件即可.
#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>#include<string>#include<cctype>#include<cmath>#include<map>#include<set>#include<vector>#include<queue>#include<stack>#include<ctime>#include<algorithm>#include<climits>#define LL long longusing namespace std;const int maxn=101;int S[maxn];int L,N;int cnt;int dfs(int cur){ if(cnt++==N) { for(int i=0;i<cur;i++) printf("%c",S[i]+'A'); cout<<endl; return 0; } for(int i=0;i<L;i++) { S[cur]=i; int ok=1; for(int j=1;j*2<=cur+1;j++) { int equal=1; for(int k=0;k<j;k++) if(S[cur-k]!=S[cur-k-j]) { equal=0; break; } if(equal) {ok=0;break;} } if(ok) if(!dfs(cur+1)) return 0; } return 1;}int main(){ while(cin>>N) { cin>>L; cnt=0; dfs(0); }}
0 0
- 小白书之困难的串回溯
- 【回溯】困难的串
- 困难的串-回溯法
- 困难的串- -(回溯)
- 回溯入门——八皇后和困难的串。
- UVA 129 困难的串Krypton Factor (回溯法)
- 【算法学习笔记】15.暴力求解法04 回溯法02 困难的串
- uva129困难的串(回溯法)(判断字符串是否相等)(深搜)
- 暴力求解法_回溯法(八皇后问题,素数环,困难的串)
- 【索引】困难回溯
- [索引] 回溯 - 困难
- 困难的串
- 困难的串
- 困难的串问题
- 输出困难的串
- 困难的串
- 困难的串
- 困难的串
- logistic和softmax原理、联系
- JAVA 配置环境变量
- poj1745(01背包)
- 白盒测试方法比较
- Poco数据库操作用户手册(一)
- 小白书之困难的串回溯
- 获取带滚动条的页面的位置,长宽等信息
- 修正线性单元(Rectified linear unit,ReLU)
- C++实现图的邻接表
- 构造函数,函数重载
- Java中equals和==的区别,hashCode和equals的关系
- zookeeper原理(转)
- Action Bar 详解
- 花生壳内网穿透要注意什么?