【ybt金牌导航8-1-4】【luogu P4151】路径最大异或和 / 最大XOR和路径
路径最大异或和 / 最大XOR和路径
题目链接:ybt金牌导航8-1-4 / luogu P4151
题目大意
给你一个无向图,边有边权,要你找一条从 1 到 n 的路径,使得路径上经过的边边权异或起来最大。
如果重复经过边,那边权要异或多次。
思路
首先我们想想没有环怎么搞。
那容易 DP 一下得到 (从 到 的路径异或和),那答案就是 。
但你想到它有环。
那假设这些环都不在 到 的最短路径上。
那我们就可以选择专门去经过这个环或不经过,根据异或有贡献分别是环边的异或和以及 。
那如果在路径上呢?
红色是你选的一个路径,然后粉色是在路径上的一个环。
那你把它们异或起来,你就发现,它就变成了这个:
棕色的那个,就是另一条路径了,那我们可以根据要不要一个这个环来改变要走的路径。
那接着有人会问,可能两个小环会组成大环,你要把所有的环都找出来,不也会超时吗?
那我们再画图来看:
红色是两个小环,粉色是大环。
那你发现,你把两个小环异或起来,就是你要的大环了。
那我们其实可以通过小环的组合异或,得到所有的环。
那问题就变成了给你一堆数,有一个数一定要选(你找的随便一个从 到 的路径),其它的任选一些(小环),要选出的数的异或值最大。
那就是线性基搞搞就好了。
代码
__EOF__

本文作者:あおいSakura
本文链接:https://www.cnblogs.com/Sakura-TJH/p/YBT_JPDH_8-1-4.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/Sakura-TJH/p/YBT_JPDH_8-1-4.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
标签:
数学&数论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现