문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

6183 : 세그먼트 트리와 트리 결합

•시간제한: 2.000 S •메모리제한: 256 MB •제출: 0 •통과: 0 •만든사람: suakii

6183 : 세그먼트 트리와 트리 결합

시간 2.000s · 메모리 256MB · 제출 0 · 정답 0

문제 설명

트리에서 특정 서브트리의 모든 노드의 가중치를 일괄 변경하는 연산과 임의의 두 노드 u, v를 잇는 최단 경로 상의 노드 가중치 합을 구하는 연산을 효율적으로 처리하는 프로그램을 작성하시오.

입력 설명

첫째 줄에 노드의 개수 N과 쿼리의 개수 Q (1 ≤ N, Q ≤ 100,000)가 주어집니다.
둘째 줄부터 N-1개의 줄에 트리 간선 정보 u, v가 주어집니다.
그 다음 Q개의 줄에 쿼리가 주어집니다.
- 1 u val: u번 노드의 서브트리 노드들의 값에 val을 더합니다.
- 2 u v: u에서 v까지 경로 상 노드의 합을 출력합니다.

출력 설명

2번 쿼리가 주어질 때마다 해당하는 경로 합을 한 줄씩 출력합니다.

입력 예시
COPY
복사되었습니다!

5 4
1 2
1 3
2 4
2 5
1 2 5
2 4 5
1 3 2
2 4 5

출력 예시
COPY
복사되었습니다!

15
15

출처/분류

NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘