만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

다리

시간 제한4초메모리 제한512 MB

요약
다리마다 무게 제한이 바뀌는 섬 그래프에서, 주어진 무게의 차가 출발 섬에서 갈 수 있는 섬의 개수를 구합니다.
난이도

어려움10점 중 8점

유형
분할 정복, 유니온 파인드, 그래프
정답자
아직 제출이 없습니다

문제

상트페테르부르크 시의 수로 길이의 총합은 약 282 km이고, 도시 면적 중 물이 차지하는 비중은 약 7%이다.


Wikipedia

상트페테르부르크는 섬 nn개를 다리 mm개로 이어 만든 도시이다. 섬은 1부터 nn까지의 정수로, 다리는 1부터 mm까지의 정수로 나타낸다. 각 다리는 서로 다른 두 섬을 잇는다. 어떤 다리는 표트르 대제 시절에 지었고, 어떤 다리는 지은 지 얼마 되지 않았다. 그래서 다리마다 무게 제한이 다르다. 즉, 자동차가 다리 ii를 지나려면 무게가 did_i 이하여야 한다. 다리는 때때로 보수한다. 다만 보수한다고 해서 다리가 반드시 튼튼해지는 것은 아니어서, did_i 값은 늘 수도 있고 줄어들 수도 있다. 시민과 관광객을 위해 다음 두 가지 질의를 처리할 수 있는 프로그램이 있다면 좋을 것이다.

  1. 다리 bjb_j의 무게 제한이 rjr_j로 바뀌었다.
  2. 무게가 wjw_j인 자동차가 섬 sjs_j에서 출발해 도착할 수 있는 섬의 수를 구하시오.

두 번째 형태의 질의에 모두 답하시오.

입력

첫 번째 줄에는 두 정수 nn, mm이 주어진다. 각각 상트페테르부르크의 섬 수와 다리 수이다. (1≤n≤500001 \le n \le 50000, 0≤m≤1000000 \le m \le 100000)

다음 mm개 줄 중 ii번째 줄에는 세 정수 uiu_i, viv_i, did_i가 주어진다. 섬 uiu_i와 섬 viv_i를 잇는 다리의 처음 무게 제한은 did_i이다. (1≤ui,vi≤n1 \le u_i, v_i \le n, ui≠viu_i \ne v_i, 1≤di≤1091 \le d_i \le 10^9)

그다음 줄에는 질의의 수 qq가 주어진다. (1≤q≤1000001 \le q \le 100000) 이어서 qq개 줄에 질의가 주어진다. 각 질의는 정수 tjt_j로 시작한다. (tj∈{1,2}t_j \in \{1, 2\})

tj=1t_j = 1이면 첫 번째 형태의 질의이다. 정수 bjb_j, rjr_j가 뒤따르며, 다리 bjb_j의 무게 제한이 rjr_j로 바뀐다는 뜻이다. (1≤bj≤m1 \le b_j \le m, 1≤rj≤1091 \le r_j \le 10^9)

tj=2t_j = 2이면 두 번째 형태의 질의이다. 정수 sjs_j, wjw_j가 뒤따르며, 무게가 wjw_j인 자동차가 섬 sjs_j에서 출발해 도착할 수 있는 섬의 수를 구하라는 뜻이다. (1≤sj≤n1 \le s_j \le n, 1≤wj≤1091 \le w_j \le 10^9)

출력

두 번째 형태의 질의마다 한 줄에 답을 하나씩 출력한다.

힌트

녹색 에지는 질의에서 물어보는 자동차가 건널 수 있는 다리를 나타낸다. 녹색 노드는 이 자동차가 도착할 수 있는 섬을 나타낸다. 화살표가 가리키는 섬은 이 자동차가 처음에 있던 곳이다.

첫 번째 테스트 데이터

두 번째 테스트 데이터

예제2

  1. 예제 1

    입력
    3 4
    1 2 5
    2 3 2
    3 1 4
    2 3 8
    5
    2 1 5
    1 4 1
    2 2 5
    1 1 1
    2 3 2
    
    예상 출력
    3
    2
    3
    
  2. 예제 2

    입력
    7 8
    1 2 5
    1 6 5
    2 3 5
    2 7 5
    3 4 5
    4 5 5
    5 6 5
    6 7 5
    12
    2 1 6
    1 1 1
    2 1 2
    1 2 3
    2 2 2
    1 5 2
    1 3 1
    2 2 4
    2 4 2
    1 8 1
    2 1 1
    2 1 3
    
    예상 출력
    1
    7
    7
    5
    7
    7
    4