0
点赞
收藏
分享

微信扫一扫

搜索练习2(P1123取数游戏)

花海书香 2022-04-13 阅读 26
c++算法DFS

闲聊一下:

  • 搜索练习只有口胡和总结,不喜欢可以看完别的文章,由于本菜菜发高烧,只好一篇一篇的更新,欢迎之后来看我的搜索练习。

P1123 取数游戏 - 洛谷

题意:

  • 找出矩阵数字和最大的,保证在该数八个方位都不能够相邻。

题目分析:

  •  我运用的方法相对而言比较好理解吧,经典的dfs的一个思想,设置一个vis标记数组,其实这个题我需要八个方向全标记出来,因为我前面的列已经标记完了,所以在搜索下一行的数的时候,我只需要标记左边,左上,上,右上等看这几个点是否有标记过即可,如果没有即可选择该点,如果有就再搜索下一个点,然后我再在dfs中加入sum,不断更新sum的最大值,return条件就是只要超过行个数即可。

注意:

  • 边界条件,因为不能相邻所以要列在递归时需要偏移一行,所以有一个回溯条件,一旦列大于题目条件,就要回溯到1。

 

举报

相关推荐

0 条评论