最小生成树
裤头Kt
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
POJ-3026-Borg Maze [最小生成树][BFS]
题目传送门题意: 给定一个N*M的图,’#’为墙,问最少需要多少步可以把所有的’A’,’S’相连。 思路: 1. 求出两两字母之间的最短路径,可以用bfs 2. 知道每点之间的路径,可以用prim求最小生成树#include <algorithm> #include <iostream> #include <cstdlib> #include <cstring> #include <cstd原创 2017-07-27 10:04:52 · 314 阅读 · 0 评论 -
POJ-1679-The Unique MST [最小生成树][次小生成树]
题目传送门题意: 给定一个无向图,求最小生成树是否唯一 思路: 求出次小生成树,与最小生成树判断。次小生成树 求除了最小生成树之外的最小生成树。 求法: 先求出来最小生成树,并把每两点之间权值最大值记录下来,生成树添加一条边之后会形成环,要删边自然删最长的边。 更新方法: ans = min(ans, tmp+mp[i][j]-path[i][j]); #include <algo原创 2017-07-27 10:15:34 · 308 阅读 · 0 评论 -
POJ-1251 && HDU-1301 -Jungle Roads [最小生成树]
题目传送门(POJ-1251) 题目传送门(HDU-1301)题意: 给出N个节点,以及每个节点相连的节点及权值,求最小生成树。 例如 A 2 B 12 I 25 表示 与A节点相连的有两个节点 B 权值 12 I 权值 25 思路: 节点字符映射为1-26,用邻接矩阵建图,prim求最小生成树#include <algorithm> #include <iostream> #in原创 2017-07-27 10:22:31 · 354 阅读 · 0 评论 -
POJ-1287-Networking [最小生成树]
题目传送门题意: 给出N个点以及M跳边权,求最小生成树 思路: 邻接矩阵建图,prim求最小生成树,注意判断重边#include <algorithm> #include <iostream> #include <cstring> #include <cstdlib> #include <cstdio> #include <cmath> #include <queue> #include <s原创 2017-07-27 10:25:25 · 271 阅读 · 0 评论 -
POJ-2349-Arctic Network [最小生成树]
题目传送门题意: 军事基地需要建立通信,有两种通信方式,无线电通信和卫星通信,无线通信有距离限制,卫星通信无视距离,只有S个基地可以建立卫星通信,求最长的建立无线通信的距离 思路: 用Kruskal最小生成树,每次合并两个基地,加一条边,当边数+S为总基地数时,即为需要建立最长的无线通信的距离#include <algorithm> #include <iostream> #include <原创 2017-07-27 10:34:22 · 371 阅读 · 0 评论 -
POJ-1751-Highways [最小生成树]
题目传送门题意: 给定N个城市的坐标,已经建立了M条高速公路,问还需要建立多少条高速公路,才能使所有城市联通,要求建立的高速公路距离总和最短,输出所有新建立的高速公路 思路: 先将已经建立的边合并,用Kruskal求最小生成树,并输出合并的边。#include <algorithm> #include <iostream> #include <cstdlib> #include <cstrin原创 2017-07-27 10:39:12 · 331 阅读 · 0 评论 -
POJ-1258-Agri-Net [最小生成树]
题目传送门题意:输入一个邻接矩阵,求最小生成树。思路:裸的prim模板题。#include <algorithm> #include <iostream> #include <cstring> #include <cstdlib> #include <cstdio> #include <cmath> #include <queue> #include <map> #include <set>usin原创 2017-08-21 08:49:56 · 358 阅读 · 0 评论 -
LightOj-1029-Civil and Evil Engineer
题目传送门题意:给定一个无向图,求他的最小生成树与最大生成树的平均值。思路:用Kruskal正着求最小生成树,再倒着求最大生成树。#include <bits/stdc++.h>using namespace std;struct node{ int x, y, w; }edge[30000]; int cnt; int n; int fa[15000]; int cmp1(node a,原创 2017-10-21 10:41:01 · 336 阅读 · 0 评论
分享