#2325. 网络延迟时间

网络延迟时间

n 个网络节点,标记为 1n

给你一个列表 times,表示信号经过 有向 边的传递时间。 times[i] = (ui, vi, wi),其中 ui是源节点,vi是目标节点,wi是一个信号从源节点传递到目标节点的时间。

现在,从某个节点 K 发出一个信号。需要多久才能使所有节点都收到信号?如果不能使所有节点收到信号,返回 -1

格式

输入

第一行表示输入的n 下面n-1行代表 times[i] = (ui, vi, wi) 最后一行表示输入的k

输出

需要多久才能使所有节点都收到信号?如果不能使所有节点收到信号,返回 -1

示例 1:

输入:
4
2 1 1
2 3 1
3 4 1
2
输出:2

示例 2:

输入:
2
1 2 1
1
输出:1

示例 3:

输入:
2
1 2 1
2
输出:-1

提示:

  • 1 <= k <= n <= 100
  • 1 <= times.length <= 6000
  • times[i].length == 3
  • 1 <= ui, vi <= n
  • ui != vi
  • 0 <= wi <= 100
  • 所有 (ui, vi)对都 ​互不相同​(即,不含重复边)