题解:
考虑建立一个分层图,从s向猪圈连边,容量为初始容量,
猪圈向第一个顾客连边,容量为INF
顾客向汇点连边,容量为购买量
这样一轮就搞完了,考虑下一个顾客
由于上一轮被顾客访问的猪圈都互通了,那么可以新开一个节点
从上一次的猪圈向这个新的点连边INF
从这个点向这一轮的猪圈连边INF,
最后再从上一轮的猪圈向这一轮的猪圈连边,这样就完成了
建立分层图的原因是要保证操作的先后顺序
但是这样点数是nm的,显然会超时
考虑这么一件事情,一个猪圈对某个顾客有意义当且仅当他们之间有边
那么