【题目链接】
【思路要点】
- 问题中存在一种类似于流量限制的人流限制,考虑用网络流解决本题。
- 枚举答案,对于每个时刻的每个位置分别建立一个点,简单建图后运行最大流,观察是否满流即可。
- 常见的网络流\(Dinic\)算法中建立了反向边,因此可以在\(Ans=x\)的残量网络上加点后直接继续运行\(Ans=x+1\)的结果。
- 最终图中的点数与边数均为\(O(N*M*Ans)\)级别,因此时间复杂度应为\(O(N*M*Ans^{2})\)。由于运行常数较大,实际上程序无法快速运行答案较大时的数据,但实测测试通过。