rt,本题的做法是二分图最大多重匹配,具体来说每个点可匹配的边不再是 111,而是 kkk。对应到网络流上即把源汇的连边容量改为 kkk。这种图的最大流复杂度应当是 O(mn)O(m\sqrt n)O(mn) 的。在本题中还需要枚举 kkk,最终复杂度为 O(nmn)O(nm\sqrt n)O(nmn)。以上即为两篇题解所提到的不可过做法。并且那两篇题解分析出了神秘的复杂度,第一篇题解甚至说 dinic 的复杂度是 O(∣V∣∣E∣)O(|V||E|)O(∣V∣∣E∣),有点搞笑。
按照 O(nmn)O(nm\sqrt n)O(nmn) 的复杂度来说本题是可过的,并且实测可过。
又按照题解所说的一种优化办法。即倒序枚举 kkk 使得解决完每个 kkk 后只需要给源汇的连边的容量 +1+1+1 即可,正确性不会有问题。时间复杂度我不会分析,第一篇题解给出的结论是:加 kkk 次 111 和只跑一次加 kkk 的复杂度相同,于是总的复杂度与只跑一次的复杂度相同。按理来说这种做法的复杂度是 O(mn)O(m\sqrt n)O(mn)。于是我想到 mmm 是否还能更大一些?我试图将 mmm 开到 10610^6106 并运行这个优化算法,但是截至发帖他还是没有跑出来,所以这个复杂度应当是错误的,但是该怎么分析呢?