洛谷P1991无线通讯网

博主最初用最小生成树再删最大边的思路只拿40分,后参考题解理解新方法。先构建最小生成树,选一点放卫星电话找最大边,根据边两端点有无电话分情况处理。已知s个电话、p个点,可进行s - 1次删边操作,答案是第(p - 1 - (s - 1))小的边。

一开始看的时候没有多想,直接最小生成树,再删最大边,拿了40分。
发现讨论区中许多小伙伴都拿了40分,估计自己的思路错了。
看了一下题解,理解了一下思路,大概理解了意思。

一开始先最小生成树,这个没有疑问。然后就是关键了。
选中任意一个点,放置卫星电话,然后开始找最大的边。
这条边有两种情况,一种情况是这条边的一个端点已经放置了卫星电话,这时候 在另一个点直接放置电话就行了。
还有一种情况是这条边两端都没有放置卫星电话,这时候可以拿任意放置卫星电话的点替换最大边。
光说的确很难懂,上图。

在这里插入图片描述这样子红边右上方的两条边就可以替换掉任意一条。
已知有s个卫星电话,p个点,那么可以知道最小生成树中有p-1条边,可以进行s-1次上述的删除最大边操作,所以答案就是最小生成树中第(p-1-(s-1))小的边。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值