3.14号,阿里实习笔试的第二道编程是什么意思?给定一个n行m列的矩阵,矩阵中的1表示人,0表示灯光,灯光可以往上下左右四个方向照射,灯光照射距离无限远(不明白什么意思),照到一个人得一分,求最后的总得分?
示例:
2 4
0 1 0 0
1 0 1 0
输出9
这个(1,4)位置的为什么往下照得一分????
全部评论
正向遍历一遍,动态规划的思想拿到right和down的结果,反向遍历一遍得到up和left的结果,反向遍历过程中就把结果计算出来了
点赞 回复 分享
发布于 2022-04-04 10:27
我拿前缀和写的,A了80%,可能边界有一些问题吧
点赞 回复 分享
发布于 2022-04-03 16:41
我是这样想的:横着遍历每一行,每一行内部的增量规则是,如果一个0左右两边都有1,那么这个0就记两分,只有一边有1就记1分,否则不计分,这个统计过程是可以一次行遍历完成的,具体做法是设置一个prevHas1变量用于标志1是否出现过,用一个count0变量统计0的数量,当遇到1时,根据prevHas1与count0计分,随后将prevHas1置1,count0清零。然后纵向遍历也是一样的统计方法。
点赞 回复 分享
发布于 2022-04-01 20:31
我是用前缀和计算每个方向上是否有人然后遍历一边数组累加得分(至今没有面试😫)
点赞 回复 分享
发布于 2022-03-28 12:13
dfs深度便利 维护一个visited数组
点赞 回复 分享
发布于 2022-03-26 11:21
面试的时候面试官和我聊到这个题目,他说关键是避免重复计算,可以考虑用一个标记矩阵什么的,不过我还是不太明白应该怎么做
点赞 回复 分享
发布于 2022-03-24 18:15
(0,4)和(0,3)往左照都会得一分,你说灯泡往下照不得分,你算错了
点赞 回复 分享
发布于 2022-03-15 21:47
(1,4)是往左照得1分吧 感觉是动态规划相关的题
点赞 回复 分享
发布于 2022-03-15 09:36

相关推荐

不愿透露姓名的神秘牛友
06-13 19:30
化身华黑 今天询问对接人审批情况,结果被告知没HC了 云计算 
苦闷的柠檬精allin实习:主管面结束后hr每周保温一次,结果前几天和我说没hc了,我也化身华黑子了
点赞 评论 收藏
分享
04-28 11:34
西北大学 运营
牛客4396号:不好意思,这个照片猛一看像丁真
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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