【LG5021】[NOIP2018]赛道修建
【LG5021】[NOIP2018]赛道修建
题面
题解
NOIP之前做过增强版还没做出来QAQ
一看到题目中的最大值最小,就很容易想到二分答案
重点是考虑如何check
设dp[x]表示在x的子树中未被选过的权值最大的路径权值为多少
对于其子节点v,它满足f[v]+cost[u][v]>=mid就可以选择
否则再选一条路径和它拼在一起即可
这个过程开个multiset可以较简单地做
复杂度O(nlog2n)(常数有点大)
NOIP之前做过增强版还没做出来QAQ
一看到题目中的最大值最小,就很容易想到二分答案
重点是考虑如何check
设dp[x]表示在x的子树中未被选过的权值最大的路径权值为多少
对于其子节点v,它满足f[v]+cost[u][v]>=mid就可以选择
否则再选一条路径和它拼在一起即可
这个过程开个multiset可以较简单地做
复杂度O(nlog2n)(常数有点大)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】博客园携手 AI 驱动开发工具商 Chat2DB 推出联合终身会员
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 聊一聊 C#异步 任务延续的三种底层玩法
· 敏捷开发:如何高效开每日站会
· 为什么 .NET8线程池 容易引发线程饥饿
· golang自带的死锁检测并非银弹
· 如何做好软件架构师
· 欧阳的2024年终总结,迷茫,重生与失业
· 史上最全的Cursor IDE教程
· 聊一聊 C#异步 任务延续的三种底层玩法
· 上位机能不能替代PLC呢?
· .NET Core:架构、特性和优势详解