Z_L_G
Z_L_G
全部文章
题解
总结(20)
训练赛(18)
归档
标签
去牛客网
登录
/
注册
又活一天?
你怎么可能做和别人相同的事情又同时超过别人呢?
全部文章
/ 题解
(共131篇)
算法入门-maze-优先队列广搜(恶心!
题意 走迷宫,迷宫中有传送门,使用传送门需要花费三秒,求解从起点到终点的最短时间 思路 相较于传统搜索,出现的问题是对于一个点可能有多个到达时间,我们希望记录这多个时间中最短的时间 对于传送门,由于同一个点可能有多个传送门,所以不能使用点对点的映射,使用点对数组的映射,map<int,v...
广度优先搜索
搜索剪枝
2025-04-09
0
53
算法入门-小木棍-剪枝
题意 给定n根短棍,将其拼成若干等长的长棍,求能拼成的长棍的最短长度是多少 思路 枚举长棍的长度,深搜判断能否拼成(将每一个棍尝试摆上去,如果摆上去不大于枚举长度就深搜下一层,超过的就跳过,最终判断所有棍用完的时候,最后一根长棍是否刚好拼完) 优化一:对于枚举,枚举区间为最长的棍的长度到所有棍...
深度优先搜索
搜索剪枝
2025-04-09
0
81
算法入门-字串变换-双向广搜
题意 给定两个字符串a,b,不超过6条变换规则,,如果能在十步以内使用变换规则将a变换为b,输出步数,否则输出NO ANSWER! 思路 对于最优极限情况,每一步内a可用6次变换规则,总复杂度为6^10 只要超过两种规则出现重复使用,单项搜索就会TLE 所以使用双向搜索,维护两个队列,一个从a...
双向bfs
2025-04-07
0
53
算法入门-八数码
题意 给定一个九宫格数字状态,询问能否恢复成 | 1 | 2 | 3 | | 4 | 5 | 6 | | 7 | 8 | x | 如果可以输出还原步骤,否则输出unsolvable 思路 对状态进行广搜,每次记录当前状态是由什么情况经过什么步骤改变而得到的,最终如果能搜到目标状态,说明可行,反之则...
广度优先搜索
队列
2025-04-04
0
74
算法入门-奶酪
题意 有一块奶酪,高度为h,内部有n个球洞,半径均为r,问这些球洞能否贯穿奶酪 思路 使用并查集,合并到顶和底两个大集合中,最后检查顶和底是否在同一个集合 注意,和顶部连通的球洞可能同时和底部连通,注意处理方式 另一种思路为使用深度优先搜索,看全部搜完后最大深度能否超过h AC代码(并查集)...
并查集
深度优先搜索
2025-04-03
0
50
算法入门-幸运数字Ⅱ
题意 给定一个区间,将区间中每一个数放大为大于等于它的第一个全部由4,7,组成的数字,然后再求和 思路 dfs打表把所有4和7组成的数组打印出来,然后检查区间,输出即可 特别的,注意加入0和4444444444,否则lower_bound和upper_bound会出错 AC代码 #inclu...
深度优先搜索
打表
2025-04-03
0
107
算法入门-食物链-并查集特殊用法
PS 此题是并查集的一种抽象运用,通过开大空间,将一条逻辑链存到一个合并集合里 开眼看世界 题意 三种动物:a吃b,b吃a,c吃a n只动物,m条信息,信息就两类——ab是同类\a吃b 若一条信息和之前矛盾,则认为新出现的是假信息,求一共有多少条假信息 思路 最终维护三个集合,每个集合代表...
并查集
2025-03-31
0
41
算法入门-DongDong认亲戚
题意 n个人,m次操作 每次操作要么在a,b之间建立亲戚关系,要么查询a,b之间是否为亲戚 思路 并查集典例,最开始每个结点的父亲是自己,建立,就合并两个,查询就查询 AC代码 #include<bits/stdc++.h> using namespace std; int f...
并查集
2025-03-31
0
52
算法入门-Parity_game-并查集
题意 给定长为n的01串,给出m次描述,找出第一次矛盾的描述序号 思路 将区间值转化为端点值 eg:[5,10]中有奇数个1,说明前4个数中1的个数和前10个数中1的奇偶性不同,也就是前4个数中有奇数个一的时候前10个数有偶数个1 维护一个大小为2n的father数组,当属于1-n表明为奇数,...
并查集
map
2025-03-31
0
42
算法入门-Defeat_Enemy
题意 有n支军队,m支敌人,每支军队攻击力比对方高就可以消灭对方,同时减少对方攻击力的防御力,每只军队只能进攻一个敌人,能否消灭所有敌人,消灭敌人后最多剩多少军队 思路 贪心的思考,在已知敌人防御力的情况下,我们希望存活,所以使用刚刚好大一点的军队,去消灭他,如果最大都不够消灭,就选择防御力最...
贪心
multiset
2025-03-30
0
47
首页
上一页
5
6
7
8
9
10
11
12
13
14
下一页
末页