标签: DFS

15 篇文章

高手去散步
Original Link 思想: DFS。 题目所给出的路径可以连接为一个无向图。 则利用邻接矩阵来存图,从 $1$ 号点开始,深度优先遍历所有的点。 走过的路径长度用 cnt 保存,最后维护最长的 res 即可。 代码: #include <iostream> #include &l…
优质牛肋骨
Original Link 思想: DFS。 从小到大依次枚举所有的数显然不现实,因此考虑按位枚举。 枚举从最高位开始,之后枚举每一位的数,直到达到指定位数为止。 枚举每一位后,需要判断当前位的数和高位数的组合数是否为质数,只有如此才能满足条件。 举例说明对于 $7331$ 的枚举过程: 第一位为 …
字母
Original Link 思想: DFS。 由题意易知,从左上角的字母开始搜索,最多经过 $26$ 个不同的字母。 则将走过的字母利用 vis 数组进行标记,若走过标记为 True。 递归处理每一个格子,每一层利用偏移量数组遍历上下左右四个方向。 用 res 维护最大可以走过的不同字母的个数,每次…
马蹄铁
Original Link 思想: DFS。 要想使得串保持平衡,即 (((((....))))) 形式,则设 p 为 ( 的数量,q 为 ) 的数量。 特别的,起始时为 ) 无论如何搜索都无法平衡,最大长度为 $0$。 在搜索时,当 q != 0 时,若下次出现 ( ,此时为 (()(... 亦不…
棋盘挑战
Original Link 思想: DFS。 注意棋盘的每一行,每一列及其有棋子存在的对角线的平行线上有且只有一个棋子。 递归处理,每一次递视为一次对是否放置棋子的判断,递归的层数视为棋盘的层数,每一层只能放置一个棋子。 对于递归的每一层,遍历这层棋盘的格子,判断以该格子的列和对角线的平行线上是否存…
数据结构课程设计
迷宫求解 1. 问题描述 (1)根据用户选择的游戏难度程度来动态生成迷宫地图,迷宫规模为三种,分别是10 10、50 50、100 * 100。 (2)每次游戏开始需要玩家选择一个难度,然后随机生成一个迷宫地图,需要保证改迷宫地图至少存在一个解。 (3)迷宫地图由0和1构成的n维方阵表示,0表示可走…
2022 年 CCPC 河南省赛 (A,E,F,G,H)
A. Mocha 上小班啦 原题链接 题目大意: 一个数由互不相同的 $n$ 位数组成。 输出 $n$ 位的满足上述条件的最小整数(不含前导零)。 不存在则输出 $-1$。 思想: 签到题。 当 n <= 10 时,最小的 $n$ 位数的序列为 [1, 0, 2, 3, 4, 5, 6, 7,…