CSDN同步 原题链接 其实这题不难。考虑直接搜索所有情况,最多有 \(4^{10} = 1048576\) 种可能的走法,因此深搜即可简单解决问题。注意到需要数组的变化,因此,如果要用宽搜的话很可能记录状态不方便(直接内存炸掉?),深搜传数组是个很好的选择。 注意几个点: 如果某个方向第一个就是个 ...
分类:
Web程序 时间:
2021-07-16 17:44:48
阅读次数:
0
搜索(深搜回溯与广搜) 1.深搜与回溯 深度优先搜索,简称为深搜或 "DFS" (Depth First Search), 是图运算的一种搜索方式,简要来说是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次.大致的搜索过程如下 深度优先遍历图的方法是, 从图中某顶点v出发: (1 ...
分类:
其他好文 时间:
2021-04-30 12:09:37
阅读次数:
0
求强连通/割点/桥 step1 将图深搜,形成深搜树,按遍历顺序标号->dfn[i] step2 将low[i]初始化为dfn[i] step3 回溯时low[i]=min(low[i],low[i的儿子]) 判断 DFN[]作为这个点搜索的次序编号(时间戳) LOW[]作为每个点在这颗树中的,子树 ...
分类:
编程语言 时间:
2021-03-16 11:48:55
阅读次数:
0
AcWing 848. 有向图的拓扑序列 用BFS来写拓扑,以前还真没想过这个思路 之前用的都是深搜找拓扑序 依然是正常用数组实现一个邻接表,然后用数组模拟队列,从入度为0,即d[i] == 0的点开始搜索 用数组模拟队列的原因是为了最后方便直接输出拓扑序,就不用另开一个数组专门存储了 代码中的几个 ...
Addition Chains 题面 对于一个数列 \(a_1,a_2 \dots a_{m-1},a_m\) 且 \(a_1<a_2 \dots a_{m-1}<a_m\)。 数列中的一个数 \(a_k(2<k<=m)\) ,都有两个数 \(a_i,a_j(1<=i,j<k)\) 满足 \(a_i ...
分类:
其他好文 时间:
2020-12-31 12:44:08
阅读次数:
0
P1219 [USACO1.5]八皇后 Checker Challenge 好像是紫书上面的题目,没有想象的那么难. 标记的思想. n最大才13,可以深搜,但是搜的过程中就得把不可能情况排除掉,不然搜一年(虚指). #include <algorithm> #include <cstdio> #in ...
分类:
其他好文 时间:
2020-11-27 11:18:03
阅读次数:
7
有 N 个物品和一个容量是 V 的背包。 物品之间具有依赖关系,且依赖关系组成一棵树的形状。如果选择一个物品,则必须选择它的父节点。 如下图所示: 如果选择物品5,则必须选择物品1和2。这是因为2是5的父节点,1是2的父节点。 每件物品的编号是 i,体积是 vi,价值是 wi,依赖的父节点编号是 p ...
分类:
其他好文 时间:
2020-10-30 12:56:08
阅读次数:
20
题目链接:https://leetcode-cn.com/problems/same-tree/ 思路:同时深搜或广搜两棵树,比较值即可 class Solution { public boolean isSameTree(TreeNode p, TreeNode q) { //100 5 if(p ...
分类:
其他好文 时间:
2020-08-07 09:43:32
阅读次数:
51
from typing import List# 这道题看了大佬写的代码,经过自己的理解写出来了。# 从最外围的四周找有没有为O的,如果有的话就进入深搜函数,然后深搜遍历# 判断上下左右的位置是否为Oclass Solution: def solve(self, board: List[List[s ...
分类:
其他好文 时间:
2020-07-29 21:52:19
阅读次数:
71
最近跟zyy连麦谈理想耽误了些时间(每天最多也就六七个小时吧), 所以最近一直在水更呜呜呜 ,我去学习呜呜呜 迷宫基本思路一般都是dfs(深搜) 这样相当于二维数组了 用vis[n][n]数组记录走过的情况 啊啊啊啊今天学习状态有点不太好,身体有些不舒服emmmmm 1551今天早早歇了,希望明天状 ...
分类:
其他好文 时间:
2020-07-11 23:03:04
阅读次数:
56