dfs搜索
leonharetd
这个作者很懒,什么都没留下…
展开
-
Tempter of the Bone(hdu1010dfs+奇偶剪枝)
题意:判断能否在t秒时到达出口,能就输出YES,不能就输出NO。思路:深搜所有路径,看看是否有一条路径符合刚好到达出口奇偶剪枝奇偶剪枝:把map看作0 1 0 1 0 11 0 1 0 1 00 1 0 1 0 11 0 1 0 1 00 1 0 1 0 1从 0->1 需要奇数步从 1->0 需要偶数步如果abs(si-sj)+abs(di-dj)为偶原创 2013-06-13 10:39:55 · 595 阅读 · 0 评论 -
Ñ皇后问题(hdu2553dfs打表)
题意:n个皇后不在同一行同一列有多少种放法思路:dfs搜索所有情况,因为每行必有一个所以行数就不用看,用num[i]保存列号i就是行号,搜一种放法判断是否符合条件(n皇后不在同一行同一列上)符合条件sum++,最后输出sum的值即可#include#include#include#includeusing namespace std;int n;int sum = 0;i原创 2013-06-13 18:38:10 · 750 阅读 · 0 评论 -
Sequence one(hdu2610dfs+去重)
题目:有一个数列N,和一个数字k,输出该数列的前k个子序列,如果k大于N的所有子序列,输出所有符合要求的序列,序列要求不能是递减序列比如:3 51 3 2的前五个序列为1321 31 2没有3 2 因为3 2 为递减的思路:dfs搜索,保存上一次选择的数和所选的数的下标,当选择下一个数的时候比较和上次所选择数的大小,大于等于的是符合条件的,符合条件的原创 2013-07-25 15:24:24 · 860 阅读 · 0 评论 -
Sequence two(hdu2611dfs)
题意:同2610一样,但是最后的输出序列要是有序的思路:dfs,你原序列是什么,dfs出来就是什么,如果想输出的序列式有序的,先对原序列排序,保存原序列的下标。搜索的时候和2610一样,多了一个判断条件,序列是递增的,下标也是递增的,还要判断他的下标是否递增,如果是符合条件#include#include#include#includeusing namespace std;原创 2013-07-25 15:55:47 · 712 阅读 · 0 评论