斯坦纳树

用途

给一个图,求最小生成树?

这个很简单,prim/kruskal搞一搞。

如果只要求联通某几个点,而不强制要求其他点的联通?

这个prim/kruskal就不好做了。

那怎么求这个呢?

当然是要用到斯坦纳树啊。

计算方法

假设fi,stafi,sta表示最后一个联通的是ii,当前要求点的联通性为stasta(状态压缩),那么有两种状态转移:

  1. fi,sta=fi,s+fi,sta−sfi,sta=fi,s+fi,sta−s,其中ss是stasta的子集。
  2. fi,sta=fu,sta+valu,ifi,sta=fu,sta+valu,i,其中u,iu,i之间有边相连。

第一个方程是很好维护的,关键是第二个方程。

观察到,第二个方程与spfa的方程dv=du+valu,vdv=du+valu,v很相似。

那么我们就可以用spfa维护第二个方程啦!

例题

BZOJ 2595 [Wc2008]游览计划 题解

斯坦纳森林

用途

给一个图,求最小生成树?

这个很简单,prim/kruskal搞一搞。

如果只要求联通某几个点,而不强制要求其他点的联通?

这个很简单,斯坦纳树可以解决这个问题。

如果只要求某几个集合中的点互相联通,而分属两个不同集合的点没有要求,可以共用边?

这个就需要用斯坦纳森林了。

计算方法

把所有的集合放在一起,做一遍斯坦纳树,然后对所有集合做一遍子集合并dp。

例题

BZOJ 4774 修路 题解

BZOJ 4006 [JLOI2015]管道连接 题解

转载于:https://www.cnblogs.com/Canopus-wym/p/10376189.html

浅析算法——斯坦纳树相关推荐

  1. 【算法竞赛学习笔记】超好懂的斯坦纳树详解!!!

    title : 斯坦纳树 tags : ACM 图论 date : 2021-6-26 author : Linno 什么是斯坦纳树 给定 n 个点 A1,A2,⋯,An试求连接此n个点,总长最短的直 ...

  2. 业界萌新对斯坦纳树的小结

    业界萌新对斯坦纳树的小结 0.简介 斯坦纳树问题是组合优化问题,与最小生成树相似,是最短网络的一种.最小生成树是在给定的点集和边中寻求最短网络使所有点连通.而最小斯坦纳树允许在给定点外增加额外的点,使 ...

  3. 斯坦纳树与旅行商问题

    啥也别说了,先上图 讨论了整整四个小时,只讨论了不到两章,我的那章还没讲完,真佩服我们.不过,印证了真理总是越辩越明这句话,通过这一次的讨论,对于我自己的那章,我都收获良多. 下面会写一下听第三章斯坦 ...

  4. [THUSC2017][斯坦纳树+随机化]巧克力

    题面 [题目描述] "人生就像一盒巧克力,你永远不知道吃到的下一块是什么味道." 明明收到了一大块巧克力,里面有若干小块,排成 n n n行 m m m列.每一小块都有自己特别的图 ...

  5. bzoj1402 Ticket to Ride 斯坦纳树 + 状压dp

    给定\(n\)个点,\(m\)条边的带权无向图 选出一些边,使得\(4\)对点之间可达,询问权值最小为多少 \(n \leqslant 30, m \leqslant 1000\) 首先看数据范围,\ ...

  6. BZOJ 4006 Luogu P3264 [JLOI2015]管道连接 (斯坦纳树、状压DP)

    题目链接: (bzoj)https://www.lydsy.com/JudgeOnline/problem.php?id=4006 (luogu)https://www.luogu.org/probl ...

  7. [WC2008]游览计划(斯坦纳树)

    [Luogu4294] 题解 : 斯坦纳树 \(dp[i][j]\) 表示以\(i\)号节点为根,当前状态为\(j\)(与\(i\)连通的点为\(1\)) 当根\(i\)不改变时状态转移方程是: \( ...

  8. [bzoj4006][JLOI2015]管道连接_斯坦纳树_状压dp

    管道连接 bzoj-4006 JLOI-2015 题目大意:给定一张$n$个节点$m$条边的带边权无向图.并且给定$p$个重要节点,每个重要节点都有一个颜色.求一个边权和最小的边集使得颜色相同的重要节 ...

  9. 【BZOJ4774】修路 [斯坦纳树]

    修路 Time Limit: 20 Sec  Memory Limit: 256 MB Description Input Output 仅一行一个整数表示答案. Sample Input 5 5 2 ...

  10. [APIO2013]机器人[搜索、斯坦纳树]

    题意 题目链接 分析 记 g(d,x,y) 表示从 (x,y) 出发,方向为 d 到达的点,这个可以通过记忆化搜索求出,注意如果转移成环(此时向这个方向走没有意义)要特判. 记 f(l,r,x,y) ...

最新文章

  1. Java将Unix时间戳转换成指定格式日期
  2. redis3.0.2 分布式集群安装详细步骤
  3. python中da_Python中字符的编码与解码
  4. js php 数据类型判断,【js基础】变量类型判断
  5. lisp用entmake生产圆柱体_德BBG公司开发用于CFRP储罐模块生产过程的自闭合HPRTM模具...
  6. Java笔记-JSP初步研究
  7. 机战 mysql_机战完整端-加配套网站-架设说明-配套工具
  8. jmeter 使用命令行执行
  9. IOS硬件解码VTDecompressionSession失效
  10. thinkpad E40 的 C1门
  11. faststone capture怎么滚动截图?faststone capture怎么录屏?
  12. 波特率和比特率之间的关系
  13. CentOS安装微软雅黑字体
  14. CocosCreator矢量绘图组件(1)
  15. java pgm_如何用Java读取PGM图像?
  16. 云南省计算机云教室,“云教室”落户云南祥云这个小山村
  17. GoDaddy域名过户PUSH攻略
  18. 选择婚庆公司的注意事项
  19. Zookeeper、Curator
  20. [渝粤教育] 上海师范大学 英汉互译 参考 资料

热门文章

  1. 《Effective STL中文版》译序
  2. 竹林蹊径:深入浅出Windows驱动开发
  3. 深入搜索引擎——海量信息的压缩、索引和查询
  4. 19【推荐系统5】NeuralCF
  5. 优化理论14----二分法、二分法与黄金分割法比较、python实现
  6. functools.partial
  7. 数值分析:Hermite多项式
  8. caffe 利用Python API做分类预测,以及特征的可视化
  9. java 集成ibm mq 教程_IBM MQ JMS 与spring的整合
  10. mysql的4字节字符支持_让MySql支持Emoji表情(MySQL中4字节utf8字符保存方法)