对于【模板】网络最大流的第二篇 ISAP的题解 在 dfs 的最后一段有这么一段代码:
--gap[dep[u]];
if(gap[dep[u]]==0)dep[s]=n+1;
dep[u]++;
gap[dep[u]]++;
return used;
但是在 oi-wiki 是这么讲的:
而 ISAP 还存在另外一个优化,我们记录层数为 i 的点的数量 numi,每当将一个点的层数从 x 更新到 y 时,同时更新 num 数组的值,若在更新后 numx=0,则意味着图上出现了断层,无法再找到增广路,此时可以直接终止算法(实现时直接将 ds 标为 n),该优化被称为 GAP 优化。
本人觉得下面解释更加合理,所以题解中的代码这么写的依据是什么,求助