Diverging Directions

5

3 votes
Problem

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

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

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

  • 1iw: Change the weight of the i-th edge to w
  • 2uv: 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 n,q, the number of nodes, and the number of queries, respectively.

The next 2n2 integers will contain 3 integers ai,bi,ci, denoting a directed edge from node ai to node bi with weight ci.

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

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

2n200000

1q200000

1ai,bin

All edge weights will be between 1 and 106.

The edges (a1,b1),(a2,b2),(an1,bn1) will describe a rooted spanning tree pointing away from node 1.

bj=1 for nj2n2.

an,an+1,,a2n2 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

?