给定一个 \(n\) 个点,\(m\) 条边的有向图。初始所有边都被上锁了。第 \(i\) 条边在 \(t_i\) 时刻结束时被解锁,在此之前都无法通过。
你初始在 \(1\) 号节点。假设第 \(i\) 个时刻开始时你位于点 \(x\)。你必须需要选择一条 \(x\) 的已解锁的的出边,并在第 \(i\) 个时刻结束时抵达指向点。若找不到这样的边,就失败了。
那么,在不失败的前提下,抵达 \(n\) 号节点的时刻最小是多少?
注意到图只有在某条边被解锁的时刻会改变。因此我们考虑从小到大枚举每一条边被解锁的时刻,并找到当前阶段下抵达 \(n\) 号节点的最小时刻。
一个方法是维护第 \(t_i\) 个时刻时点的可达性情况。此时做一次多源 bfs 即可确定答案。
点的可达性情况可以矩阵维护,bitset 优化后即可做到 \(O(\dfrac{n^3m\log V}\omega+nm)\)。