04 2025 档案

摘要:原题链接:https://www.luogu.com.cn/problem/P2860 题意解读:在无向图中,最少需要加多少条边,使得整个图变成边双连通的,也就是不存在割边。 解题思路: 关于边双联通的概念和求法,请参考:https://www.cnblogs.com/hackerchef/p/18 阅读全文
posted @ 2025-04-29 13:34 hackerchef 阅读(13) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1656 题意解读:求无向图中所有的割边。 解题思路: 本题开始学习无向图的双连通性,在此之前建议先学习有向图的强连通性相关知识:https://www.cnblogs.com/hackerchef/p/18851009 阅读全文
posted @ 2025-04-29 13:33 hackerchef 阅读(73) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P3387 题意解读:求一条路径,使路径经过的点权值之和最大,路径上点可以重复但每个点权值只算一次,输出最大的权值和。 解题思路: 1、问题分析 如果是DAG,可以直接通过拓扑排序来进行递推,计算到每个点的路径权值之和的最大 阅读全文
posted @ 2025-04-28 16:00 hackerchef 阅读(26) 评论(0) 推荐(0)
摘要:原题链接:P2863 [USACO06JAN] The Cow Prom S 题意解读:有向图的强联通分量模版题。 解题思路: 一、强连通性概念 强连通性是图论中描述有向图顶点间关系的重要概念。对于有向图 G=(V,E): 强连通:如果图中任意两个顶点 u 和 v 之间存在从 u 到 v 的路径,也 阅读全文
posted @ 2025-04-28 15:06 hackerchef 阅读(46) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/CF1120D 题意解读:在一颗树中,每个节点u都可以对其子树所有叶子节点增加一个数x(x可以是正、负、0),每个节点i的操作都有代价c[u],假定叶子节点初始设置为任意值,求选择哪些节点做操作,可以使得叶子节点值都变成0, 阅读全文
posted @ 2025-04-24 21:54 hackerchef 阅读(39) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P3623 题意解读:n个节点m条边的无向图,其中边有两种类似,一种是“水泥路”,一种是“鹅卵石路”,要求一种生成树方案,正好将n个节点连通,且“鹅卵石路”条数正好是k条。 解题思路: 1、问题分析 由于限制鹅卵石路的条数, 阅读全文
posted @ 2025-04-23 10:18 hackerchef 阅读(21) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/CF1245D 题意解读:给n个城市供电,每个城市有坐标(x,y),给城市i直接供电花费是c[i],通过一个有电的城市i给没电的城市j供电花费是 (k[i]+k[j]) * (|x1-x2|+|y1-y2|),求最少的花费, 阅读全文
posted @ 2025-04-22 09:59 hackerchef 阅读(23) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2700 题意解读:n个节点n-1条边的带权图,其中有k个节点标记为敌军,删掉一些边,使得k个敌军节点互补连通,求删除的边权值之和最小值。 解题思路: 1、问题分析 换一个角度,要求删除多少边使得k个节点互不连通,不如在一 阅读全文
posted @ 2025-04-22 09:03 hackerchef 阅读(26) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1967 题意解读:在n个节点的带权无向图中,有q个询问,求两点之间的路径中,最小边的最大值。 解题思路: 1、初步分析 要求两点之间路径中最小边的最大值,可以将kruskal算法变化一下: 从大到小一次处理每条边,当将边 阅读全文
posted @ 2025-04-21 17:39 hackerchef 阅读(16) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1550 题意解读:挖n个井,每个井i直接挖的代价是w[i],如果从一个已有井i挖一条路到j,则开通井j的代价是p[i][j],求挖所有井的最小代价。 解题思路: 井可以看做图中的节点,直接挖的代价是点权值,从已开通的井挖 阅读全文
posted @ 2025-04-21 12:11 hackerchef 阅读(32) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1195 题意解读:在图中选择若干边,构成k个连通块时,求所选择的边的最小权值和。 解题思路: 在kruskal算法中,从小到大枚举每条边u->v,加入并查集使得u->v之间连通,计算连通块达到k个时,此时所选择的所有边权 阅读全文
posted @ 2025-04-21 11:41 hackerchef 阅读(14) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1396 题意解读:找到一条从s到t的路径,使得最大边权值最小,求这个最大的边权值。 解题思路: 根据kruskal的算法模型,对边权值小到大处理的过程,如果加入某条边权后,出现s、t连通,那么最后一次的边权即s到t路径上 阅读全文
posted @ 2025-04-21 11:08 hackerchef 阅读(13) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P4180 题意解读:求严格次小生成树。 解题思路: 一、定义 次小生成树是在一个连通图中,生成树中权值第二小的树。 严格次小生成树是指在一个连通图中,权值严格大于最小生成树且是所有生成树中权值次小的生成树。 二、定理 性质 阅读全文
posted @ 2025-04-20 22:48 hackerchef 阅读(21) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1194 题意解读:每个物品都有价格a,如果手上有物品i,且i->j有非0权值,那么买只用花该权值也可以买j,求用最少的钱买到所有物品。 解题思路: 方法一、直接思考 考虑如何买每一个物品: 设待买的物品为t 如果t与已经 阅读全文
posted @ 2025-04-17 19:57 hackerchef 阅读(27) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P3366 题意解读:最小生成树概念和算法模版。 解题思路: 最小生成树(MST)是在一个连通的带权图中,找到一棵包含所有顶点且边权之和最小的树。常见的最小生成树算法有普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法 阅读全文
posted @ 2025-04-17 14:13 hackerchef 阅读(145) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2047 题意解读:求 经过每个点k的所有路径i->j的最短路条数 / i->j的最短路条数 之和。 解题思路:最短路计数问题,且是多源最短路计数,可以借助于Floyd 设d[i][j]表示i到j的最短路,cnt[i][j 阅读全文
posted @ 2025-04-16 09:14 hackerchef 阅读(29) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2419 题意解读:已知n头奶牛的m场比赛的胜负关系,问有多少奶牛可以唯一确定排名。 解题思路: 1、建模 要确定一头奶牛的排名,必须满足这头奶牛与其他所有奶牛都有明确的胜负关系 胜负关系有两种:胜、负 胜可以直接胜也可以 阅读全文
posted @ 2025-04-16 08:59 hackerchef 阅读(25) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1119 题意解读:n个节点的图,节点按时间依次可用,多个询问求某一时刻两点之间的最短路。 解题思路: 节点数只有200,很快能想到Floyd算法,但是如果只背过Floyd的模版,是不足以解决这道题,需要对Floyd算法的 阅读全文
posted @ 2025-04-15 09:03 hackerchef 阅读(20) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P3403 题意解读:三个正整数x,y,z,a、b、c都大于等于0,求1 + ax + by + cz在1 ~ h范围内所有可能的值的数量。 解题思路: 先将问题转化一下:求ax + by + cz在0 ~ h-1范围内所有 阅读全文
posted @ 2025-04-14 15:29 hackerchef 阅读(45) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P6464 题意解读:将任意两点连一条权值为0的边,计算所有不同两点最短路之和的最小值。 解题思路: 1、朴素想法 枚举所有可能连0边的两点(O(n^2)),建立0边之后跑Floyd算法(O(n^3)),然后更新答案。 总体 阅读全文
posted @ 2025-04-12 18:04 hackerchef 阅读(23) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P3275 题意解读:n个小朋友分糖果,每个人分得di个,每个人分得的数量满足一组不等式关系,求最少需要多少糖果才能保证所有小朋友都能分到糖果。 解题思路:又是一道典型的差分约束问题,关键在于先确定要求什么,再考虑如何确定不 阅读全文
posted @ 2025-04-11 17:41 hackerchef 阅读(19) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1993 题意解读:n个未知数满足一组不等式关系,求是否有一组可能的解。 解题思路:典型的差分约束问题,只需要判断是否有解,因此可以把不等式统一成Xi <=Xj + c的形式,再建立j->i的边,然后用spfa判负环即可。 阅读全文
posted @ 2025-04-11 10:43 hackerchef 阅读(25) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1073 题意解读:n个城市,m条单向或者双向道路,每个城市有价格属性,从起点跑到终点过程中,求价格最高和价格最低城市价格差的最大值,要先买后卖,也就是价格低的要在价格高的前面。 解题思路: 一、动态规划 思考买和卖的分界 阅读全文
posted @ 2025-04-11 09:28 hackerchef 阅读(31) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1462 题意解读:有n个点,m条边,每个点有过路费属性,每条边有减血量属性,有初始血量b,要求所有从起点到终点的路径方案中,血量没有降为负数时,某一条路径中的点的最大过路费的最小值。 解题思路: 要求最大过路费的最小值, 阅读全文
posted @ 2025-04-10 16:19 hackerchef 阅读(22) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1875 题意解读:n种药水,每个药水都有原始价格,又给出若干药水合成的方案1份a+1份b合成1份c,c的价格可以是a+b的价格之和,求药水0的最低价格,以及获得最低价格的方案数。 解题思路: 1、朴素想法 这明显是一个D 阅读全文
posted @ 2025-04-10 15:29 hackerchef 阅读(18) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P1144 题意解读:计算所有节点的最短路条数。 解题思路: 在使用BFS、Dijikstra计算最短路的过程中,一个节点如果能更新最短路,必然是被一个已经更新过最短路的节点,也就是说, 在更新最短路的时候,可以同时更新其最 阅读全文
posted @ 2025-04-09 11:36 hackerchef 阅读(41) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2910 题意解读:求图中经过m个点的的最短路之和。 解题思路:要计算经过m个点的最短路之和,就是要知道m个点中每一段a1~a2,a2~a3...am-1~am的最短路 而求多源最短路,必须想到Floyd算法! Floyd 阅读全文
posted @ 2025-04-06 21:37 hackerchef 阅读(32) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P2865 题意解读:求次短路长度。 解题思路: 方法一、求最短路的同时更新次短路 设d1[],d2[]分别保存节点的最短路、次短路,利用Dijikstra算法,每次从优先队列中取距离起点最短的路径d、节点u, 如果d>d2 阅读全文
posted @ 2025-04-06 20:32 hackerchef 阅读(52) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P4568 题意解读:n个节点带权图中,从起点走到终点,最多有k条边长度可以清0,求最短路径长度是多少。 解题思路: 有k条边长度可以视为0,也就是从每一个点走到邻点总有一条长度为0的边,要确保走长度为0的边不超过k次,可以 阅读全文
posted @ 2025-04-05 00:33 hackerchef 阅读(36) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/B3611 题意解读:求传递闭包,floyd算法的应用。 解题思路: 此题需要利用动态规划思想 1、状态表示 设g[i][j][k]=1表示从i经过1~k的点可以到j,g[i][j][k]=0则表示i不能到j 2、状态转移 阅读全文
posted @ 2025-04-04 00:15 hackerchef 阅读(44) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P5960 题意解读:n个未知数,m个不等式,求一组可能解。 解题思路: 1、概念 差分约束系统是由一组形如xj-xi <= ck的不等式组成的系统,其中xi 和xj是变量,ck是常数。其目标是求解这个不等式组,找到一组满足 阅读全文
posted @ 2025-04-03 16:33 hackerchef 阅读(49) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P3385 题意解读:找到从1出发的负环,存在输出YES,不存在输出NO。 解题思路: 1、前置知识:SPFA算法 https://www.cnblogs.com/jcwy/p/18803811 2、核心思想:在SPFA算法 阅读全文
posted @ 2025-04-02 16:46 hackerchef 阅读(65) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P4779 题意解读:单源最短路算法。 解题思路: 一、Dijikstra算法,适用于没有负权边的单源最短路场景 1、Dijikstra-朴素版 算法思想:用已经确定最短路的点去更新与其相连的没有确定最短路的点 初始化每个点 阅读全文
posted @ 2025-04-02 14:32 hackerchef 阅读(148) 评论(0) 推荐(0)
摘要:原题链接:https://www.luogu.com.cn/problem/P11230 题意解读:有n个人,每个人有一组整数序列,从任意整数1开始,取长度[2,k]的子序列作为一个龙,然后在其他人的序列中选长度[2,k]的子序列跟上一个子序列首尾相连(上一个子序列的尾等于当前子序列的头)称为接龙, 阅读全文
posted @ 2025-04-01 11:43 hackerchef 阅读(252) 评论(0) 推荐(0)