您的位置:首页 > 其它

【HNOI 模拟】Dual-Sim Phone

2015-08-28 10:09 316 查看

题目大意

给出一幅nn个点mm条边的带权有向图,要求从中选出两个点,记为11和22,使得这两个点的出边终点集合大小恰好为nn,而某个点的费用为11到它边权和22到它的边权中较小值,求出费用最小值。

分析

题目意思就是找两个点,它们走一步能到所有的点,某个点的费用为两个点到它边权的较小值(没边可视为权值正无穷)。

考虑和所有点关联最少的点,它的度数最多为mn\frac{m}{n},而选出的点至少有一个来自它的邻接点集合。枚举之,枚举另外一个点,线性扫描这两个点的出边,判断即可。

考虑时间复杂度O(mn∑idegi)=O(m2n)O(\frac{m}{n}\sum_i deg_i)=O(\frac{m^2}{n}),似乎nn较小时过不了。

然而mn\frac{m}{n}那部分顶多为nn,于是原时间复杂度变为O(max(mn,n)⋅m)O(max(\frac{m}{n},n)\cdot m),当n=m−−√n=\sqrt m时有最值O(mm−−√)O(m\sqrt m)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: