洛谷 P1935 [国家集训队]圈地计划 网络流 最小割 Dinic+当前弧优化 不在一类额外奖励转化为在一类额外奖励

该博客探讨了洛谷P1935圈地计划问题,通过网络流中的最小割算法进行解决。利用Dinic算法配合当前弧优化,将原本不在同一集合的元素获得附加权值的条件转换为在同一集合中。通过权值交换,将问题转换为常规形式,便于应用最小割策略。提供了相关思路和图解分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目链接:

https://www.luogu.com.cn/problem/P1935

思路来源博客:

https://www.luogu.com.cn/blog/sjf-a-newcomer/solution-p1935

这个博客对这类题目的解释非常到位,一定要再看

算法:1:最小割 Dinic+当前弧优化 不在一类额外奖励转化为在一类额外奖励

思路:

1:这道题和这类题目的其它题型区别在于,其它题两个元素在同一个集合就会有附加权值,而这道题是两个元素不在同一个集合才会有附加权值,现在就看如何转换

2:直接把其中一种颜色的a和b权值交换就行了,这样两个位置本来要选择不一样才会有附加权值,现在变成了两个位置集合相同才会有附加权值,于是就变成了我们熟悉的那种类型了

图解:

代码:

#include <bits/stdc++.h>
#define xuhao(i,j) ((i-1)*m+j)
#define hefa(i,di,top) (di<=i&&i<=top)
//Dinic+当前弧优化

u
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值