
搜索
文章平均质量分 58
onthewaytotop
每天一道搜索题有益身心健康~
展开
-
hdu 1518 Square(dfs)
题意:给你几个木棒,问能否将这些木棒头尾相接形成一个正方形 分析:记录我的第一道自己敲的dfs!!!,虽然最后T了(T T)。这题要优化的地方很多,不然很容易超时。 #include #include #include #include using namespace std; int vis[100],a[100]; int m; int l; //边长(总和除以4) bool dfs(i转载 2016-07-25 10:30:05 · 221 阅读 · 0 评论 -
hdu 1584 蜘蛛牌(dfs)
Problem Description 蜘蛛牌是windows xp操作系统自带的一款纸牌游戏,游戏规则是这样的:只能将牌拖到比她大一的牌上面(A最小,K最大),如果拖动的牌上有按顺序排好的牌时,那么这些牌也跟着一起移动,游戏的目的是将所有的牌按同一花色从小到大排好,为了简单起见,我们的游戏只有同一花色的10张牌,从A到10,且随机的在一行上展开,编号从1到10,把第i号上的牌移到第j号牌上原创 2016-07-25 08:44:19 · 424 阅读 · 0 评论 -
hdu 1426 Sudoku Killer(数独 dfs)
题意:就是数独! 分析:这题被大神认为是水题,我也只是有点思路,跟着大神的思路和代码敲完,一直T啊,天哪。。一定要cin输入才能不T嘛,为何?? Sample Input 7 1 2 ? 6 ? 3 5 8 ? 6 5 2 ? 7 1 ? 4 ? ? 8 5 1 3 6 7 2 9 2 4 ? 5 6 ? 3 7 5 ? 6 ? ? ? 2 4 1 1 ? 3 7 2 ? 9 ?转载 2016-07-24 21:10:30 · 404 阅读 · 0 评论 -
hdu 1016 Prime Ring Problem (dfs)
题意:输入一个n(n Note: the number of first circle should always be 1. Sample Input 6 8 Sample Output Case 1: 1 4 3 2 5 6 1 6 5 2 3 4 Case 2: 1 2 3 8 5 6 7 4 1 2 5 8 3 4 7 6 1原创 2016-07-24 19:38:01 · 185 阅读 · 0 评论 -
hdu 1010Tempter of the Bone(dfs+剪枝)
题意:有一个N*M的迷宫,‘.’代表能走的格子,‘X’代表墙,‘S’代表入口,‘D’代表出口,如果能在规定时间内到达出口,输出“YES”,否则输出“NO”。 分析:感觉自己老是不会搜索,看了几段课程后想开始练练搜索【不知道为什么一直不喜欢搜索题,所以一直没做这个专题】,感觉这题很经典。 #include #include using namespace std; char map[9][9]原创 2016-07-24 19:02:08 · 234 阅读 · 0 评论 -
hdu 2087 剪花布条 (kmp模板题)
看样例就知道题意,kmp模板的稍微改动 Sample Input abcde a3 aaaaaa aa # Sample Output 0 3 #include #include #include #include using namespace std; char t[1111],p[1111]; int pi[1111]; void getFail(char原创 2016-07-22 11:09:39 · 310 阅读 · 0 评论 -
kmp算法模板
据说是刘佳汝书籍里的模板,亲测能用: void getFail(char* P, int* f) { int m = strlen(P); f[0] = 0; f[1] = 0; for(int i = 1; i < m; i++) { int j = f[i]; while(j && P[i] != P[j]) { j = f[j]; } f[i + 1转载 2016-07-22 11:00:01 · 220 阅读 · 0 评论 -
字符串搜索之BMH 算法(伪代码)
天哪,算法复杂度越来越低了,连线性的都不用了!!O(n-m)!!从后往前扫的功效!!(要匹配的字符) 逆简单算法 • 如果从P的后面开始搜索? – Boyer and Moore Reverse-Naive-Search(T,P) 01 for s 02 j 03 // check if T[s..s+m–1] = P[0..m–1] 04 while T[s+j] = P原创 2016-07-21 21:19:19 · 1219 阅读 · 0 评论 -
字符串搜索之KMP算法(伪代码)
之前的Rabin-Karp算法虽然在一定程度上达到了优化,但是最坏情况下也是O(nm)的复杂度。 接下来说说KMP算法,复杂度是线性的O(n+m) 前缀表 • 我们可以预先计算大小为m的前缀表来存储p[q]的 值 (0 P p a p p a r q 0 1 2 3 4 5 6 p[q] 0 0 0 1 1原创 2016-07-21 20:38:20 · 2676 阅读 · 0 评论 -
字符串搜索之Rabin-Karp 算法(伪代码)
最近在听哈尔滨工业大学王宏志老师的《算法设计与分析》这门课,感觉受益匪浅。今天就记录一下有关字符串搜索的Rabin-Karp 算法。原创 2016-07-21 19:50:54 · 855 阅读 · 0 评论