首页 > 其他分享 >P9235 网络稳定性

P9235 网络稳定性

时间:2023-08-07 11:46:17浏览次数:37  
标签:重构 P9235 text 边权 稳定性 网络 节点 Kruskal

前置知识

  • 最近公共祖先(LCA)

  • \(\text{Kruskal}\) 重构树

简化题意

P9235 网络稳定性
给一个有边权的无向图,给你点 \(u\) 到另一个点 \(v\) 所有的路径上最大的边权最小是多少。

solution

先来介绍一下 \(\text{Kruskal}\) 重构树。这个算法是最小生成树的 \(\text{Kruskal}\) 算法的延申,大体思路是相近的。

构造方法

  1. 把最小生成树上的边从小到大排序,像最小生成树那样判断连通性即是否加边。

  2. 假设可以连边,我们就把这条边的边权作为另外两点所在集合根节点的父节点。

  3. 如果此时遍历完所有的边,即构造完成,得到了重构树。

那么重构树都有些什么优秀的性质呢?

首先一定是一颗二叉树,因为所有的连边过程都是边权节点与两个不相连的根节点相连。其次原图中两个点间所有路径上的边最大权值的最小值一定是构造树上两点的 lca 权值。

那么,对于这一道题,我们该如何去使用?因为这题求的是路径上的最大值的最小值,那么我们就在排序的时候把边按照边权从大到小排序就好了,具体的求 lca 我们使用倍增树剖都是可以的。代码实现的话需要注意构造出来的不一定是一颗树,而很可能是森林,所以需要每一次判断连通性去初始化树剖。

核心部分的代码

void kruskal()
{
	sort(e+1,e+m+1,cmp);
	for(int i=1;i<=n;++i) f[i]=i;
	for(int i=1;i<=m;++i)
	{
		int u=find(e[i].u),v=find(e[i].v);
		if(u==v) continue;
		val[++cnt]=e[i].w;
		f[cnt]=f[u]=f[v]=cnt;
		add(u,cnt),add(v,cnt);
	}
	for(int i=1;i<=cnt;++i)
	{
		if(vis[i]) continue;   /*这里有效处理森林*/
		int rt=find(i);
		dfs1(rt),dfs2(rt,rt); 
	}
}

完整代码

推荐习题

标签:重构,P9235,text,边权,稳定性,网络,节点,Kruskal
From: https://www.cnblogs.com/fzefze/p/17611006.html

相关文章

  • #网络安全笔记(千峰)用户管理
    网络安全笔记(千峰)(用户管理)1.用户管理服务器系统版本介绍windows服务系统(不开源):win2003win2000win2008linux服务系统:redhat(开源收费),centos(开源免费)用户概述SID=系统id(电脑唯一标识)+uid(用户标识最后几位)windowsuid=500是administrator普通用户uid>=1000linux......
  • 分离式网络变压器连接方式
    资料来源:https://www.myjwd.com/fenlishiwangluobianyaqi.html器件选型:https://www.myjwd.com/searchproducts/?psid=152&sid=159......
  • (网络)台式机无法上网问题
    问题:以太网正常连接,但是无法连接微信,向日葵,浏览器。飞书报错:浏览器报错:协议不受支持,客户端和服务器不支持一般的ssl协议版本或加密套件问题解决登录校园网http://202.194.7.101:8800/home......
  • 星融元:DPU替代网络可视化专用设备实现业务报文深度处理
    网络可视化中的深度业务处理网络可视化场景中,通常需要将采集过来的数据经过深度业务处理后再交给后端分析系统。这些深度业务处理功能包括:传统的深度业务处理通常由带CPU的框式设备完成,但框式设备成本高、功耗大、扩展不够灵活的种种给客户带来了极大的困扰。DPU算力的池化应用Heli......
  • 论文分析|利用图神经网络挖掘群组信息进行个性化推荐
    ExploitingGroupInformationforPersonalizedRecommendationwithGraphNeuralNetworks论文分析初步论文分析推荐系统的关键问题是如何对用户偏好进行建模。已有工作大多利用用户历史数据学习用户偏好,但面临数据稀疏问题。在线社交网络的流行促进了在线讨论组的增加,同一......
  • scp tcpdump 多网卡绑定 永久修改网络相关配置文件
    scptcpdump多网卡绑定 永久修改网络相关配置文件网卡[root@localhost~]#vim/etc/sysconfig/network-scripts/ifcfg-ens33BOOTPROTO=static     //网卡获取地址模式ONBOOT=yes        //开机是否自启动​​IPADDR=192.168.91.105   ......
  • 不增加成本能更好应对生产系统稳定性意外故障的“开发测试运维三岗转为系统红蓝军”实
    系统红蓝军,不仅可以引导开发人员做好功能自测,更可以在不增加成本的情况下,引导企业有效应对生产系统稳定性***意外***故障。1基于观察企业经常出现意料之外的软件系统生产环境稳定性故障。2问出问题是什么原因导致企业经常出现意料之外的软件系统生产环境稳定性故障?3形成可......
  • 网络流与线性规划24题
    先贴个自己的Dinic板子。//最大流constintinf=0x3f3f3f3f3f3f3f3f;structEdge{ intfrom,to,cap; boolori; Edge(intu,intv,intc,boolo){ from=u,to=v,cap=c,ori=o; }};vector<Edge>edges;vector<int>id[10005];intadd_edge(intu,......
  • 【算法】网络流初步
    参考资料用最通俗的语言让你学会网络流OI-Wiki网络流算法学习笔记(28):网络流一、概念网络流指的是在一个每条边都有容量的有向图中找到一种方案,使得源点到汇点的流量最大。网络流问题常见的有三类,分别是最大流,费用流和最小割。最大流顾名思义,表示的是在有向图中找到一种......
  • Linux网络服务之SSH服务
    目录SSH服务1.ssh基础2.ssh原理3.实际操作SSH服务1.ssh基础SSH(SecureShell)协议是一种安全通道协议对通信数据进行了加密处理,用于远程管理作用:主要用来实现字符界面的远程登录、远程复制等功能。SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的......