题目大意:地图由"S""X""D""."组成,"X":wall ,".":block, 问是否能从S出发在第T秒钟刚好到达D。
思路:深搜,注意剪枝。
剪枝一:block数应该大于等于T,且大于需要走的最少步数。T应该大于等于最少步数。
剪枝二:奇偶剪枝。
即把地图看成
01010101
10101010
01010101
10101001
即从1走到1 或从0走到0 需要偶数步。从0走到1 或从1走到0需要奇数步。
所以把位置相加同 步数进行异或即可判断了。
一开始只有剪枝一超时了,接着网上查了下,发现奇偶校验。但是自己写了下,效率还不是很高。187ms~~懒得弄了~~