DFS加奇偶剪枝
题目链接HDU 1010
题目大意
从S出发,到D,每走一步需要一秒,走过的路会塌陷,问你能否刚好在t秒内到达。
题目解析
首先思路是DFS,记录横坐标,纵坐标,和已经走的步数。用DFS搜索,看能否出现满足题意的情况,注意DFS之后要把vis数组重置,因为dfs只是模拟,dfs到某一点不满足的话这一个点以后搜索的时候还是可以走的。
但是会T,Baidu发现需要进行奇偶剪枝。对每一点搜索时,先判断这一点到目的地的横纵坐标差的和,是否和要用的步数的奇偶性相同,不同的话怎么绕都是无法满足的,可直接return。
AC代码
|
|