【学习笔记】CF1305 Kuroni and Antihype
想了一下,觉得还是发单篇的题解比较合理
怎么感觉这题之前做过
先抛开建边方式不管 这一步其实挺重要的,但是可能大多数人独立做这道题的时候都在想用位运算的性质,而没有想到分开考虑吧?,考虑新建
0
0
0号节点,问题转化为如果
a
i
and
a
j
=
0
a_i\ \text{and}\ a_j=0
ai and aj=0,那么存在
i
→
j
i\to j
i→j的长度为
a
j
a_j
aj的边,以及
j
→
i
j\to i
j→i的长度为
a
i
a_i
ai的边,求以
0
0
0为根节点的最大树形图。
观察发现边权和等于将每条边看成 a i + a j a_i+a_j ai+aj求和后再减去 ∑ a i \sum a_i ∑ai,因此无向图的生成树也对应一个树形图。
因此可以直接跑
kruskal
\text{kruskal}
kruskal算法。从大到小枚举边权,然后枚举子集,注意一下细节应该可以通过。复杂度
O
(
3
18
)
O(3^{18})
O(318)。时限开3s还是比较稳的
__EOF__

本文链接:https://www.cnblogs.com/cqbzly/p/17530017.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」