大疆 Java 笔试B卷 8.18

从二维矩阵的 (0, 0) 点出发向右开始巡逻,每次巡逻遇到障碍物或到达边界时,都会顺时针转90度并继续前进。需要计算无人机巡逻时覆盖到的区域的总块数。

我是用一个二维数组int来存刚到达当前位置(i,j)时的方向,int表示二进制数字,方向值下8,左4,上2,右1,同一位置的方向可以不同,但重复的时候说明该终止了,所以用这个(i,j)存的值and上方向值,如果不为零则终止循环。如果(i,j)== 0 就说明没来过,count++,最后返回count。 #大疆# #笔试# #秋招# #Java#

最后过了90%的用例,不知道有什么地方没考虑到。好像可以用dfs?无所谓我就是暴力屎山硬写

想到了,应该是没有考虑一开始就走不了的情况,比如[[0,1],[1,0]]
全部评论
大佬
1 回复 分享
发布于 2024-08-19 22:16 黑龙江
我也过90%,我觉得写得对得很😅
1 回复 分享
发布于 2024-08-18 20:58 上海
我dfs只过百分之30
点赞 回复 分享
发布于 2024-08-19 15:34 湖南
我也是暴力求解过了90,我把这道题当做是螺旋矩阵来做了,不知道用dfs行不行😂
点赞 回复 分享
发布于 2024-08-19 10:04 北京
我也90
点赞 回复 分享
发布于 2024-08-19 09:23 北京
只有一个点0的时候会死循环
点赞 回复 分享
发布于 2024-08-18 22:14 北京
这次笔试可以用本地ide写吗
点赞 回复 分享
发布于 2024-08-18 21:07 山西

相关推荐

09-10 15:05
已编辑
门头沟学院 游戏后端
点赞 评论 收藏
分享
黑曼巴在线招人:草拟
点赞 评论 收藏
分享
评论
2
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务