【题解】Solution Set - NOIP2024集训Day53 图论杂题2
【题解】Solution Set - NOIP2024集训Day53 图论杂题2
https://www.becoder.com.cn/contest/5628
之前写的因为重装系统被清了,部分题目后面重写了一遍就比较简略。
「BZOJ4144」Petrol
和 「CF1253F」Cheap Robot 完全一样,只是需要特判一下不联通。
「AMPPZ2013」Bytehattan
注意:题目删的是双向边。
对偶图。
如果不连通,就是以
删去一条边,就是说我们可以割掉这条边,于是在对偶图上加上对应边,然后判是否能构成环就行了。
「CCO 2021」商旅(Travelling Merchant)
做过。
考虑一个 dp。
首先排除所有出度为
想办法避免 dp 的后效性。
我们的目标其实就是想办法去掉里面的
。 根据一些性质分析。
注意到,性质 1:一条边的
这个时候,我们可能产生一些没有出度的点,其答案一定是确定了,那么删掉她并用其去更新其前驱。
此时,所有的点都是有出度的了。
所以,刚才的性质 1 依旧适用,所以我们每次取
具体实现可以参见 luogu 题解区。
「JOI 2017 Final」足球
https://www.luogu.com.cn/article/zsi8sd7l
踢球要分横竖,是因为我们并不能在没有人的情况下让球自己拐弯。
「COI2012」TRAMPOLIN
直接将每个点可以去到的点连有向边,然后就是求最长路。
蹦床的话,就建一个虚点连向所有的点就行了。
最后缩点,然后 topo 就行了。
4min
「CF576D」Flights for Regular Customers
注意到,答案的路径一定存在一个分界点,到她之前经过的最后一条边
所以,考虑枚举这个可以经过的边的阈值
如果我们知道在恰好经过
考虑怎么维护这个连通性。
对于一张图的邻接矩阵,将其是为一个矩阵
。 那么
可以表示恰好经过 条边,能够到达的那些点。
这个东西正确,是因为 矩阵乘法 和 floyd 具有高度的一致性。
时间复杂度是:
注意到矩阵的取值只有 0/1,改成 bitset 可以做到
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话