最近学习网络流,感觉代码都巨长
网络流的题目无非都是一个套路
就是首先建模,然后随便套套模板
但是这题显然没有这么简单
一开始各种乱想,反正没想到最小割
然后随手点了一发题解,借鉴学习一下大神的思路
然后就TM恍然大悟,原来就是求最小割
最小割 $=$ 最大流
按照大神的思路,把$A$田地当做源点
$B$田地当做汇点,把$n$种植物当做中间点
没有最大收益的时候就直接连接源点、汇点和中间点
加上最大收益后,有些点就像是被捆绑在了一起
我们可以在这$m$个点集和源点、汇点之间,
再设置$2m$个中间点,把这些点和源点、汇点和中间点连接在一起
最大流量就是增加的收益
听起来真的很绕,但是真的是这样
题目要求最大收益,其实就是总收益 $-$ 最小割
剩下的部分,似乎直接上模板就差不多了
然而我$TM$直接$TLE$直接飞起
这题好像要优化一点点,至少朴素的$Dinic$模板不行
又是一位大神告诉我一个玄学优化
真$TM$一手骚操作,瞬间就切掉
这个不是我的东西我就先不讲了哈
自我感觉码风美好
1 |
|