一块地用一个从 0 开始索引的二维二进制矩阵 block 表示,其中 0 表示空闲地块,1 表示放有障碍物的地块。在每个测试用例中,地的左上角永远是空闲的。一架无人机面向右侧,从左上角开始巡逻。无人机将一直前进,直到抵达的边界或遇到障碍物地块时,无人机将会顺时针旋转 90 度并重复以上步骤,初始位置和无人机飞过的地块都会被它巡逻。
若无人机可以持续飞行下去,输出被巡逻到的地块数量。
直接模拟这个过程,类似LeetCode 54.螺旋矩阵。
但是在本题中会发现如果是 3 3 0 0 0 0 1 0 0 0 0
这样的矩阵会不停循环。一个好想的思路是将vis数组升维度[x][y][4]代表当前在x,y点方向是右/下/左/上 的 这个状态是否被访问过,然后模拟即可.
本题属于以下题库,请选择所需题库进行购买