coding•DSA & Problem Solving•Graphs & Backtracking
Network Delay Time
Problem Statement
You are given a network of `n` nodes, labeled from `1` to `n`. You are also given `times`, a list of travel times as directed edges `times[i] = [u_i, v_i, w_i]`, where `u_i` is the source node, `v_i` is the target node, and `w_i` is the time it takes for a signal to travel from source to target.
We will send a signal from a given node `k`. Return the minimum time it takes for all the `n` nodes to receive the signal. If it is impossible for all the `n` nodes to receive the signal, return `-1`.
### Constraints
- `1 <= k <= n <= 100`
- `1 <= times.length <= 6000`
- `times[i].length == 3`
- `1 <= u_i, v_i <= n`
- `u_i != v_i`
- `0 <= w_i <= 100`
- All pairs `(u_i, v_i)` are unique.
### Input Format
- Line 1: Three space-separated integers `n`, `k`, and `m` (number of edges).
- Next `m` lines: Three space-separated integers `u v w`.
### Output Format
Print the minimum time for all nodes to receive the signal, or -1.
Sample Cases
Example 1Sample Case
Input: 4 2 3
2 1 1
2 3 1
3 4 1
Output: 2
Example 2Sample Case
Input: 2 1 1
1 2 1
Output: 1
Example 3Sample Case
Input: 4 2 1
2 1 1
Output: -1
Example 4Sample Case
Input: 2 1 1
2 1 1
Output: -1
Constraints
Runtime Limit: 2000 ms per test batch
Memory Limit: 256 MB
Standard I/O stream reading
Official submissions are evaluated against hidden test cases on the server to verify time & memory complexity.