首页 > 代码库 > 埃蒙的时空航道

埃蒙的时空航道

埃蒙的时空航道

题目链接:http://dutacm.club:7217/codesheaven/problem.php?id=1082

题目大意:有$n$个星球,每个星球有$p_i$个军队,$x$星球上的军队最多可迁移不超过$c$个军队到$y$星球上($x \leq y$).现已知一段时间后各个星球会遇到$s_i$个敌人袭击,问最多能干掉多少敌人.

网络流+优先队列优化dp

翻了入门经典好好看了发网络流,比网上参差不齐的blog好太多了= =,也是总算明白了.

最大流最小割定理:

若将所有顶点分成两个点集$S$和$T$,其中源点$s$在$S$中,汇点$t$在$T$中,那么$S$就被称为点割集.

如果将"起点在$S$中,终点在$T$中"的所有有向边删除,则不存在一条从源点$s$到汇点$t$的路径,将这样一组边的集合称为一个$s-t$割,它的容量定义为$c(S,T)=\sum_{u \in S,v \in T}c(u,v)$,称为割值.

 对于任意的$s-t$流$f$和任意$s-t$割$(S,T)$,有$|f| \leqslant c(S,T)$,特别地,最小割等于最大流.


 

根据题意,

埃蒙的时空航道