闲聊一下:
- 搜索练习只有口胡和总结,不喜欢可以看完别的文章,由于本菜菜发高烧,只好一篇一篇的更新,欢迎之后来看我的搜索练习。
P1123 取数游戏 - 洛谷
题意:
- 找出矩阵数字和最大的,保证在该数八个方位都不能够相邻。
题目分析:
- 我运用的方法相对而言比较好理解吧,经典的dfs的一个思想,设置一个vis标记数组,其实这个题我需要八个方向全标记出来,因为我前面的列已经标记完了,所以在搜索下一行的数的时候,我只需要标记左边,左上,上,右上等看这几个点是否有标记过即可,如果没有即可选择该点,如果有就再搜索下一个点,然后我再在dfs中加入sum,不断更新sum的最大值,return条件就是只要超过行个数即可。
注意:
- 边界条件,因为不能相邻所以要列在递归时需要偏移一行,所以有一个回溯条件,一旦列大于题目条件,就要回溯到1。