Time Limit: 30 Sec  Memory Limit: 128 MBSubmit: 1171  Solved: 639[Submit][Status][Discuss] Description 小铭铭最近进入了某情报部门,该部门正在被如何建立安全的通道连接困扰. 该部门有 n 个情报站,用 1 到 n 的整数编号.给出 m 对情报站 ui;vi 和费用 wi,表示情 报站 ui 和 vi 之间可以花费 wi 单位资源建立通道. 如果一个情报站经过若干个建立好的通道可以到达另外一个情报…
题目描述 给出一张 $n$ 个点 $m$ 条边的无向图和 $p$ 个特殊点,每个特殊点有一个颜色.要求选出若干条边,使得颜色相同的特殊点在同一个连通块内.输出最小边权和. 输入 第一行包含三个整数 n;m;p,表示情报站的数量,可以建立的通道数量和重要情报站的数 量.接下来 m 行,每行包含三个整数 ui;vi;wi,表示可以建立的通道.最后有 p 行,每行包含 两个整数 ci;di,表示重要情报站的频道和情报站的编号. 输出 输出一行一个整数,表示任意相同频道的情报站之间都建立通道连接所花费的…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4006 用斯坦纳树求出所有关键点的各种连通情况的代价,把这个作为状压(压的是集合选择情况)的初值DP即可. 代码如下: #include<cstdio> #include<cstring> #include<algorithm> #include<vector> #include<queue> #define pb push_back usi…
4006: [JLOI2015]管道连接 Time Limit: 30 Sec Memory Limit: 128 MB Description 小铭铭最近进入了某情报部门,该部门正在被如何建立安全的通道连接困扰. 该部门有 n 个情报站,用 1 到 n 的整数编号.给出 m 对情报站 ui;vi 和费用 wi,表示情 报站 ui 和 vi 之间可以花费 wi 单位资源建立通道. 如果一个情报站经过若干个建立好的通道可以到达另外一个情报站,那么这两个情报站就 建立了通道连接.形式化地,若 ui…
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=4006 [题意] 给定n点m边的图,连接边(u,v)需要花费w,问满足使k个点中同颜色的点都连通的最小费用. [思路] 题目所求斯坦纳森林. 如果我们知道满足颜色集合S连通的最小值g[S],则有转移式: G[S]=min{ g[s] , G[S’]+G[S-S’] } 则G[(1<<C)-1]即答案,G[S]定义为使得颜色集合S中所有相同颜色的点都连通的最小值. 这里的g[S],其实…
题目链接: (bzoj)https://www.lydsy.com/JudgeOnline/problem.php?id=4006 (luogu)https://www.luogu.org/problemnew/show/P3264 题解: 终于写出来斯坦纳树了.. 我一直不明白的地方是: spfa那种转移为什么是直接加边权?为什么没有一些特殊情况(如从根转移到儿子)不是加边权?后来觉得大概是因为那种特殊情况如果出现,则一定会在枚举子集的转移中被转移到. 做法就是,先对每个特殊点的子集求出来最小…
[BZOJ4774]修路 Description 村子间的小路年久失修,为了保障村子之间的往来,法珞决定带领大家修路.对于边带权的无向图 G = (V, E),请选择一些边,使得1 <= i <= d, i号节点和 n - i + 1 号节点可以通过选中的边连通,最小化选中的所有边的权值和. Input 第一行两个整数 n, m,表示图的点数和边数.接下来的 m行,每行三个整数 ui, vi, wi,表示有一条 ui 与 vi 之间,权值为 wi 的无向边. 1 <= d <= 4…
题目链接 题目大意:有一张无向图,每条边有一定的花费,给出一些点集,让你从中选出一些边,用最小的花费将每个点集内的点相互连通,可以使用点集之外的点(如果需要的话). 算是斯坦纳树的入门题吧. 什么是斯坦纳树呢? 假定有这样的题目:给你一张无向图和一个点集,每条边有一定的花费,让你选出一些边使点集内的所有点连通,求最小花费. 可以发现,如果点集大小为2,那么就转化成了一个两点间最短路问题. 而如果点集大小为总点数,那么就转化成了一个最小生成树问题. 进一步可以推出,如果点集大小为3,那么答案就相当…
给定\(n\)个点,\(m\)条边的带权无向图 选出一些边,使得\(4\)对点之间可达,询问权值最小为多少 \(n \leqslant 30, m \leqslant 1000\) 首先看数据范围,\(4\)对点,也就是\(8\)个点,很小 上斯坦纳树(局部最小生成树) 然而好像题目并不是斯坦纳树,可能是一些树拼到一起 那么就再做一个状压\(dp\)即可 复杂度\(O(3^8 * n + 2^8 * nm + 2^{12} * n)\) #include <map> #include <…
Time Limit: 10 Sec  Memory Limit: 256 MBSec  Special JudgeSubmit: 2030  Solved: 986[Submit][Status][Discuss] Description Input 第一行有两个整数,N和 M,描述方块的数目. 接下来 N行, 每行有 M 个非负整数, 如果该整数为 0, 则该方块为一个景点:否则表示控制该方块至少需要的志愿者数目. 相邻的整数用 (若干个) 空格隔开,行首行末也可能有多余的空格. Outpu…