本题是CSP-J组的第四题。
题意:
给出一个有向图,当前在 1号点,初始在时间 0,必须在 k的倍数的时间出发,且到终点的时间也必须是 k 的倍数。
每条边有一个边权 ,只有在当前时间 ≥
时才可以通过,且不能在原地不动,即每一个时间点必须走一条边。
问从 11 号点出发到 nn 号时最早的时刻。(没有方案则输出 −1−1)
思路:
因为 k≤100k≤100 很小,所以我们可以从 k入手。
注意到,如果我当前到达了 u号点,且当前时间为 p,这条边边权为 w,如果 p<wp<w,那么显然当前不能通过。
但是因为如果当前可以走到这个点,那么可以晚一些 kk 的倍数的时间出发,依然可以走到这个点,则我们可以在入口处等待一些时间,使得可以通过这条边,等待时间为,即等待
个k 的倍数,这样就可以通过这条边了,耗费时间为