搜索
文章平均质量分 66
Brokenrivers
这个作者很懒,什么都没留下…
展开
-
LeetCode 698.划分为k个相等的子集 回溯/剪枝
虽然说是中等题,但是感觉比昨天那道hard的图论还难錒...是可以用状态压缩dp写的,但是我还没学这个。但是这题剪枝真的离谱,优化到最简可以从超时优化到0ms但是如果说是纯搜索这个剪枝和递归过程还是很值得学习的....这题的搜索有两种思路,把题目看作将数装进k个桶。一种是从桶出发 ,一个一个桶的枚举要放什么数。另一种是从数出发,枚举这个数要放在哪个桶里。分析第二种思路。原创 2022-06-01 19:34:13 · 134 阅读 · 0 评论 -
Educational Codeforces Round 129 (Rated for Div. 2) D Required Length dfs/bfs记忆化
https://vjudge.net/problem/CodeForces-902B/origin原创 2022-05-25 23:10:54 · 162 阅读 · 0 评论 -
P1807 最长路 拓扑排序/bfs
P1807 最长路 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)题目很简单,求1-n的最长路。但是题目中含有负权,不能将dijkstra的松弛反着使用。考虑拓扑排序,从1开始不断pop直到n,期间不断用松弛操作更新最长路径。但是要注意。图中入度为0的点可能不止一个,那么如果从1开始topo,则有些点因为始终有个父节点而无法被遍历到。所以初始要把所有入度为0 的都加入队列。然后在每次更新子节点的时候对各个顶点松弛去最大,这样就可以得到每个顶点的最长路。最后输出dis[n]即可#.原创 2022-05-19 14:17:32 · 590 阅读 · 0 评论 -
4.17 训练周记
这周主要练习了记忆化搜索和基础数据结构。这次的acm社团面试问了个很有意思的问题,就是bfs能否用栈实现。这个问题刚听到的时候挺懵的,不懂他到底想问啥。面试后好好思考了一下,这个答案是肯定的。bfs的本质就是从一个父状态衍生出多个合法的子状态,并不断判断每一种状态并继续产生每个子状态的子状态...而我们为什么要用队列实现呢?因为队列按先进先出的特性先处理完更早压入队列的状态,一层一层的进行搜索,直到搜索 终点,此时的步数就是最短步数。用队列实现我们的逻辑和思路会非常清晰,但是如果只是想实现处理状态,原创 2022-04-17 21:40:07 · 374 阅读 · 0 评论 -
4.11 周练 dp和搜索选集
1.P2758 编辑距离线性dp这题主要难点是这三个步骤如何转换为状态转移。首先我们先确定状态,因为有两个字符串要进行匹配,首先会想到最长公共子序列问题,因为一个主串a要匹配成b,那么a的每一个子串都要与b的每一个子串匹配。所以设dp[j][i]表示长度为j的a串要变成长度i的b串需要的最少步骤。也就是说此时的a子串完全等于此时的b子串再来分析每个操作:首先我们可以不进行操作,但是不操作又要保证a与b串匹配,只能当前a的字符与b的字符相同。才能匹配。所以当a[j]==a[i]时即可不..原创 2022-04-17 17:20:24 · 342 阅读 · 0 评论 -
[USACO08FEB]Meteor Shower S & 素数环 & dp路径记录 ——搜索练习三篇
P2895 [USACO08FEB]Meteor Shower S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)思路 :思路比较简单,但是细节巨多的搜索题。原创 2022-04-02 18:04:54 · 1053 阅读 · 0 评论 -
4.10 训练周记
这周主要练习了搜索算法,整理一下本周的收获。目前遇到的搜索问题,大致可以划分为以下几类:1.填数/填表一般是给定一个规则,要求你按这个规则去找出问题的可行解。常见的问题如全排列,八皇后,数独等。这种题一般用dfs解决,因为这种问题后一个状态完全取决于前一个状态,dfs搜到的一条合法路径即为问题的解。但是原始的dfs必须再搜索完整个过程再判断是否合法显然太慢了,因为可能搜索过程中已经发现不合理了,就可以直接返回,从而加快搜索过程。而且该问题可以存在多解,此时可以通过回溯,返回上一步尝试其他的路线是原创 2022-04-10 20:38:11 · 326 阅读 · 0 评论 -
P1280 尼克的任务 反向线性dp
P1280 尼克的任务 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)思路刚开始看说实话没啥思路,因为从某个时间开始选择的每个任务都会影响下一个的任务选择,不知道该如何确定状态属性。最后想到,既然从前开始考虑每个时间该选择什么任务会影响下一个任务的选择,那么只要反向计算不就解决了这个问题吗?如果反着看,这个问题就变成了一个类似完全背包的问题。如果当前的时间是j,如果是正向计算的话,则dp[j]表示 j时间之前的最大空闲时间。但是j之后的任务选择就被j-1的选择给限制了,..原创 2022-04-09 19:47:56 · 332 阅读 · 0 评论 -
4.4 周练习 选集
P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)常规的dfs,但是输出路径和判断出口有点琐碎。输出路径需要一个ath数组在更新最优解的时候拷贝占位数组used(因为used回回溯,搜索结束为空),出口的话枚举每个被选过的饲料(used==1)的维生素,如果有不满足就return。比较简单#include <iostream>#include<vector>#inc.原创 2022-04-06 23:06:51 · 416 阅读 · 0 评论 -
01背包 记忆化搜索解法
有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行两个整数N,V,用空格隔开,分别表示物品数量和背包容积。接下来有 N行,每行两个整数vi,wi,用空格隔开,分别表示第 i件物品的体积和价值。输出格式输出一个整数,表示最大价值。数据范围0<N,V≤10000<vi,wi≤1000输入样例4 5原创 2022-01-04 16:23:33 · 1402 阅读 · 0 评论 -
P1101 单词方阵 直线搜索
题目描述给一n×n的字母方阵,内可能蕴含多个“yizhong”单词。单词在方阵中是沿着同一方向连续摆放的。摆放可沿着8个方向的任一方向,同一单词摆放时不再改变方向,单词与单词之间可以交叉,因此有可能共用字母。输出时,将不是单词的字母用*代替,以突出显示单词。例如:输入: 8 输出: qyizhong *yizhong gydthkjy gy****** nwidghji .原创 2022-01-02 23:23:35 · 425 阅读 · 0 评论 -
洛谷 P1434 滑雪 记忆化搜索
题目描述Michael 喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael 想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子:1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9一个人可以从某个点滑向上下左右相邻四个点原创 2022-01-01 18:41:51 · 236 阅读 · 0 评论 -
洛谷 P1162 填涂颜色 一道bfs水题和自己的一些感想
题目描述由数字0组成的方阵中,有一任意形状闭合圈,闭合圈由数字1构成,围圈时只走上下左右4个方向。现要求把闭合圈内的所有空间都填写成22.例如:6×6的方阵(n=6),涂色前和涂色后的方阵如下:0 0 0 0 0 00 0 1 1 1 10 1 1 0 0 11 1 0 0 0 11 0 0 0 0 11 1 1 1 1 10 0 0 0 0 00 0 1 1 1 10 1 1 2 2 11 1 2 2 2 11 2 2 2 2 11 1 1 1 1 1输入格式每组测原创 2021-12-26 21:52:18 · 240 阅读 · 0 评论 -
洛谷 P1498 南蛮图腾 分治递归过程详解
递归原创 2021-12-26 10:59:55 · 765 阅读 · 0 评论 -
洛谷 P2404 自然数的拆分问题 dfs回溯
排列组合 深度优先搜索 dfs原创 2021-12-26 09:59:54 · 190 阅读 · 0 评论 -
洛谷 P1784 数独 dfs
题目描述数独是根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行、每一列、每一个粗线宫内的数字均含1 - 9,不重复。每一道合格的数独谜题都有且仅有唯一答案,推理方法也以此为基础,任何无解或多解的题目都是不合格的。芬兰一位数学家号称设计出全球最难的“数独游戏”,并刊登在报纸上,让大家去挑战。这位数学家说,他相信只有“智慧最顶尖”的人才有可能破解这个“数独之谜”。据介绍,目前数独游戏的难度的等级有一到五级,一是入门等级,五则比较难。不过这位数学家说,他所设计的数独游戏难...原创 2021-12-25 20:55:40 · 134 阅读 · 0 评论 -
P1135 奇怪的电梯 dfs和bfs双解
dfs bfs 电梯原创 2021-12-25 20:02:07 · 356 阅读 · 0 评论 -
P1331 海战 与 P1596 Lake Counting S 联通块问题
洛谷 P1331 海战 dfs+bfs原创 2021-12-25 19:41:24 · 392 阅读 · 0 评论