随笔分类 -  DFS-深度优先搜索

很实用的一种暴力方式,当然剪枝在这里很值得一学。
摘要:简单DFS,代码如下:#include <cstdio>#include <cstring>#include <cstdlib>using namespace std;char word[10000][100];int hash[10000];void DFS( char *w, int cnt, int &ans ){ if( w[ strlen( w )- 1 ]== 'm' ) { ans= 1; return; } for( int i= 0; i< cnt; ++i ) { if( !hash[i]&& 阅读全文
posted @ 2011-08-11 16:02 沐阳 阅读(255) 评论(0) 推荐(0) 编辑
摘要:该题理解为将每一个字母与两个模式串进行匹配,如果不符合则回溯进行匹配。一个例子: aaabb aaaaaacd aaaaaacaaabbd到组合串第四个字母时,'a' 不能够与A串匹配,于是以状态为A:aaa__, B: a_______,组合串匹配到第五个字母进行递归,......当匹配到组合串的第七个字母 'c'时,该字母与A串以及B串的第四个字母均不能匹配,这时必定将回溯到组合串第三个'a'的匹配过程中,并将第三个 'a' 分配给B串,而这时,A串又会和组合串中的第四个'a' 匹配,接下来,又将以A:aaa_ 阅读全文
posted @ 2011-07-17 10:41 沐阳 阅读(530) 评论(0) 推荐(0) 编辑
摘要:我素故我在时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte总提交:17 测试通过:9描述有这样一种素数叫纯素数(YY出来的名字),当它是一个多位数的时候,你把它的末位去掉之后余下的数依然是一个素数。比如说2393,2393 本身是一个素数,它的末位去掉之后,余下的是239。239 是一个素数,它的末位去掉之后,余下的是23 。23是一个素数,它的末位去掉之后,余下的是2 。2依然还是一个素数。纯素数的长度叫做“维”。2393 是一个4维素数。3797也是一个4维素数。输入 输出按照从小到大的顺序输出所有的T维纯素数。样例输入11样例输出2357 这次校 阅读全文
posted @ 2011-05-16 12:36 沐阳 阅读(1255) 评论(0) 推荐(0) 编辑