如果你是对坐标取模进行 bfs,判断有没有被搜到的点走过:
那你大致做法是对的,但是有一个致命的错误:没考虑到“绕圈”的情况。
第一个样例的最后一组数据:
5 5
#.#.#
..#..
#####
.S#..
#.#.#
如果只判断取模后的坐标,那这幅图上面,S可以依次往左、下、右、上走,最后回到起点。
但是实际上它是这样的:
#.#.##.#.#
..#....#..
########## //这里
..#...S#..
#.#.##.#.#
#.#.##.#.#
..#....#..
########## //这里
..#....#..
#.#.##.#.#
我们发现,S 实际上只是绕圈罢了。
所以这个做法有些错误,稍微改改就行了,具体怎么样见题解。
™调了80分钟