如果你 bfs 的时候的判断是否合法是这么写的:
auto in = [](int x, int y, int z) -> bool{
return (x > 0 && y > 0 && x+1 <= n && y+1 <= m
&& a[x][y] == 0 && a[x+1][y] == 0 && a[x][y+1] == 0 && a[x+1][y+1] == 0
&& vis[x][y][z] == 0);
};
那么就和我踩了一样的坑:可能 vis[x][y][z] 被访问过了,但是它后面的 (x,y) 没被访问过,而你跳出了,就会导致 WA on#6