uva 129 Krypton Factor (DFS+巧妙的判断方法)
来源:互联网 发布:上位机软件开发 编辑:程序博客网 时间:2024/06/05 16:02
原题链接:
UVA 129
参考刘汝佳书《算法竞赛入门经典(第二版)》P195.
我是搬运工。
1.记录字母到‘A’的差值。
2.由于前面的子串已经判断过,所以只需判断含有新加字符的所有后缀子串。
3.注意输出格式
代码如下:
#include<iostream>#include<cstdio>#include<cstring>using namespace std;const int MAXN=80+5;int s[MAXN];int cnt;int n,l;bool DFS(int pos){if(cnt++==n)//cnt代表第几小的困难的串{for(int i=0;i<pos;i++){printf("%c",'A'+s[i]);if(i==63&&i!=pos-1)printf("\n");else if(i%4==3&&i!=pos-1)printf(" ");}printf("\n%d\n",pos);return false;}for(int i=0;i<l;i++){s[pos]=i;bool q=true;for(int j=1;j*2<=pos+1;j++)//一共有pos+1个字符{bool p=false;for(int k=0;k<j;k++){if(s[pos-k]!=s[pos-k-j]){p=true;break;}}if(!p){q=false;break;}}if(q){if(!DFS(pos+1))return false;}}return true;}int main(){while(scanf("%d%d",&n,&l)!=EOF&&(n&&l)){memset(s,0,sizeof(s));cnt=0;DFS(0);}return 0;}
0 0
- uva 129 Krypton Factor (DFS+巧妙的判断方法)
- UVa 129 - Krypton Factor (DFS 回溯)
- UVa--129 Krypton Factor(DFS)
- UVA-129 Krypton Factor(dfs)
- UVa 129 - Krypton Factor(DFS+回溯)
- uva 129 Krypton Factor
- uva 129 - Krypton Factor
- UVa 129 Krypton Factor
- UVA - 129 Krypton Factor
- UVa-129 - Krypton Factor
- UVa - 129 - Krypton Factor
- UVA - 129 Krypton Factor
- uva 129 - Krypton Factor
- uva 129 - Krypton Factor
- UVA 129 Krypton Factor
- UVA - 129 Krypton Factor
- UVa 129 Krypton Factor
- uva 129 Krypton Factor
- 覆写equals方法必须覆写hashCode方法
- 宏定义
- 【ASC44E】【构造】Embedding Caterpillars 毛毛虫图向完全图的映射
- java基础知识总结(二)
- Media and Camera 中 Camera 模块
- uva 129 Krypton Factor (DFS+巧妙的判断方法)
- 更改 状态栏(UIStatusBar)的颜色
- jQuery实现点击弹出层3秒后自动消失
- LeetCode 刷题: 两个二叉树节点的最近公共节点Least Common Ancestor
- android studio 版本控制 .gitignore 文件配置 &&移除已上传到git的不需版本控制的文件
- 欢迎使用CSDN-markdown编辑器
- Uva400——Unix ls
- [Django数据库模型]Django遍历视图传递过来的元组
- Java中的回调机制