2012年8月30日

HDU 1501 Zipper(Dfs记忆化搜索)

摘要: 题目:http://acm.hdu.edu.cn/showproblem.php?pid=1501题意:前两个字符串能和能合成第三个字符串,字符串内相对顺序不变开始用Dfs()以为用了变量标记如果失败不停的return。。。。然后超时,然后想不通为什么要用vis[i][j]来标记有没访问过该状态,我当时想Dfs(i,j,k)里面都一直在递增啊,而且如果失败了回溯的时候就return了,怎么还会遇到该状态呢。。。。。。原来如果在递归的第一个Dfs()匹配成功,回溯后(i,j,k就隐式地减少了),而且遇到flag也不会return(因为flag是失败才return的),然后进了第二个Dfs()。。 阅读全文

posted @ 2012-08-30 21:17 [S*I]SImMon_WCG______* 阅读(305) 评论(0) 推荐(0) 编辑

导航