← All problemsSign in

Subtree swapping

CodeChefRating 3226Open on judge ↗

You are given rooted tree with N weighted nodes numbered from 1 to N. The root of tree is node with number 1. Your goal is to handle Q queries, each of which can be one of the below three types: - getSum(u) := returns sum of values in nodes in u's subtree. - add(u, x) := adds x to values of every node in u's subtree (including u). - swap(u, v) := swaps whole subtrees of u and v if and only if t

HINT LADDERno hints yet
L1 Observation
L2 Technique
L3 Approach
L4 Pseudo-code
🔒
L5 Full solution
L5 unlocks only if you insist twice
solution.cppC++17

CodeSearch Tutor

Hints, not spoilers — it won’t hand over the full solution unless you insist.

voice by Sarvam AI

Sign in to chat with the tutor and save your progress.

Sign in to start