Diverging Directions

5

3 votes
Graphs, Medium, Shortest Path Algorithm
Problem

You are given a directed weighted graph with n nodes and edges. The nodes are labeled from 1 to n, while the edges are labeled from 1 to . The graph's edges can be split into two parts.

  • The first edges will form a rooted spanning tree, with node 1 as the root. All these edges will point away from the root.
  • The last edges will be from node i to node 1, for all .

You are given q queries. There are two types of queries

  • : Change the weight of the i-th edge to w
  • : Print the length of the shortest path from node u to v

Given these queries, print the shortest path lengths.

Input Format

The first line of input will contain two integers , the number of nodes, and the number of queries, respectively.

The next integers will contain 3 integers , denoting a directed edge from node to node with weight .

The first of these lines will describe a rooted spanning tree pointing away from node 1, while the last of these lines will have .

The next q lines will contain 3 integers, describing a query in the format described in the statement.

Output Format

For each type 2 query, print the length of the shortest path in its own line.

Constraints

All edge weights will be between 1 and .

The edges will describe a rooted spanning tree pointing away from node 1.

for .

will be distinct and between 2 and n.

Sample Input
5 9
1 3 1
3 2 2
1 4 3
3 5 4
5 1 5
3 1 6
2 1 7
4 1 8
2 1 1
2 1 3
2 3 5
2 5 2
1 1 100
2 1 3
1 8 30
2 4 2
2 2 4
Sample Output
0
1
4
8
100
132
10
Time Limit: 3
Memory Limit: 256
Source Limit:
Explanation

.

Editor Image

?