图论
文章平均质量分 70
ssl_lkx
!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
洛谷P1346 电车
洛谷P1346电车 Floyed最短路做法原创 2022-01-14 15:06:40 · 270 阅读 · 0 评论 -
洛谷P1828 [USACO3.2] 香甜的黄油 Sweet Butter
题目大意 题目链接 ppp个牧场之间有ccc条路,有nnn只在不同牧场的奶牛(可能有多头奶牛在同一个牧场)要到一个牧场去,找到一个牧场使所有奶牛需要走的距离最短。 输入 第一行为三个整数n、p、cn、p、cn、p、c。 第222~n+1n+1n+1行为奶牛所在的牧场。 第n+2n+2n+2~n+c+1n+c+1n+c+1行,每行3个整数a、b、da、b、da、b、d,表示aaa牧场到bbb牧场之间有一条长度为ddd的双向道路。 解题思路 如图 B、C、DB、C、DB、C、D牧场各有一头奶牛,最优的方案是选择原创 2022-01-14 14:26:37 · 315 阅读 · 0 评论 -
P1522 [USACO2.4]牛的旅行 Cow Tours
题目大意 链接 给出nnn个牧区的坐标,某些牧区之间有路相连,一片连通的牧区被称为牧场(题目会给出至少2个牧场)。现在要修一条路,连接两个不同的牧场。找出这条路,使连接的新牧场的直径最小。(一个牧场的直径就是牧场中最远的两个牧区的最短距离)。 解题思路 这题先用Floyed求出连通两点的最短路,再对所有牧场进行染色,最后在连接时枚举在不同牧场的两个牧区,将它们相连,此时会出现两种可能:1.新牧场的最大距离在原本的两个牧场内;2.新牧区的最大距离是连接的两个牧区与其最远牧区路径之和加上路的距离。因此,我们还需原创 2022-01-12 14:19:56 · 457 阅读 · 0 评论 -
最小生成树
题目大意 链接 普通的最小生成树,给出nnn个农场,求最短需要多长的光纤才能连接所有的农场。 解题思路 既然是最普通的最小生成树,那么就需要了解两种算法。 prim算法 prim算法采用的是蓝白点思想,把已进入最小生成树的点标为白点,未进入的标为蓝点,具体如下的例子。 如图,初始时所有点都未加入最小生成树,min1=0,min[2,3,4,5]=∞。minmin_1=0,min[2,3,4,5]=∞。minmin1=0,min[2,3,4,5]=∞。min表示每个店离白点的最短距离,设初始点1为白点。原创 2021-12-25 11:42:06 · 389 阅读 · 0 评论 -
求连通分量的7个板子
题目 前置芝士:连通分量指最大联通子图的节点数 解题思路 ·其一(bfs+邻接表) #include<queue> #include<vector> #include<iostream> #include<cstdio> #include<cstring> #include<cmath> using namespace std; struct ap { int y,next; }e[10005]; int n,ans,head[10原创 2021-12-17 21:48:55 · 281 阅读 · 0 评论
分享