题解 1432: 蓝桥杯2013年第四届真题-剪格子

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

蓝桥杯2013年第四届真题-剪格子-题解(C语言代码)

摘要:解题思路:回溯+DFS当搜索路径上的数字和等于矩阵总和的一半时说明找到了这样的一个分割,记录好走了多少步,保存步数最小的那个结果即可注意事项:记得状态恢复参考代码:public class Main ……

蓝桥杯2013年第四届真题-剪格子-题解(Python代码)

本题题意简单来说就是从坐标(1,1)格子开始找与自己相加等于总格子和一半的最少的格子数。使用DFS就可以解决。思路:是将格子用列表套列表相当二维数组存储,然后再建立一个同样大小的数组来表示有没有被访问过。代码如下:```pythoncount=100#记录格子数defDFS(n,

蓝桥杯2013年第四届真题-剪格子-题解(C++代码)

**思路**:剪格子实际上就是dfs求一个连通图,在中间的过程中判断这个连通的是否满足矩阵总和的一半,满足说明我们找到了可以分成相等两部分(判断条件就是==sum/2)但是这部分的格子的数目不一定就是我们要的答案,(万一另一半部分格子数更小呢?)在此需要特判一下,就是找最小的。

蓝桥杯剪格子-题解(C语言代码)-----初学者可以看看,详细带图(dfs)

解题思想:1.题目要求最后的答案要包含左上角格子,所以直接拿左上角格子作为起点进行深度优先搜索2.解题步骤:首先我们分析样例是怎么做的:①从第零行零列的元素作为起点深搜,每个点进行上下左右判断,寻找哪个方向可以走。以图中第一个点"10"为例,