Найпростіші запити на дереві
Обмеження: 2 сек., 256 МіБ
Задано кореневе дерево з n вершин, пронумерованих від 1 до n. Коренем дерева є вершина 1. У кожній вершині v записано ціле число av.
Потрібно опрацювати q запитів двох типів.
1
v x — збільшити значення a всім вершинам у піддереві вершини v на x.2
v — знайти максимальне значення a в піддереві вершини v.
Вхідні дані
У першому рядку задано ціле число n — кількість вершин дерева.
У другому рядку задано n цілих чисел av, що записані у вершинах.
У наступних n−1 рядках записано по два цілих числа u, v — номери вершин, з’єднані ребром.
Далі задано ціле число q — кількість запитів.
У наступних q рядках задано запити у вищеописаному форматі.
Вихідні дані
Для кожного запиту другого типу виведіть відповідь в окремому рядку.
Обмеження
1≤n≤2⋅105,
1≤q≤2⋅105,
1≤av,x≤109.
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
5 4 7 4 7 4 1 2 1 3 2 4 2 5 7 2 2 2 1 1 2 37 2 2 2 1 1 3 43 2 1 | 7 7 44 44 47 |
Примітки
Спочатку a=(4,7,4,7,4).
Піддерево вершини 2 складається з вершин 2, 4, 5. Відповідь дорівнює max{a2,a4,a5}=max{7,7,4}=7.
Піддерево вершини 1 — це ціле дерево. Відповідь дорівнює maxa=7.
Піддерево вершини 2 складається з вершин 2, 4, 5. Після збільшення a2, a4 та a5 на 37 масив a стане (4,44,4,44,41).
Піддерево вершини 2 складається з вершин 2, 4, 5. Відповідь дорівнює max{a2,a4,a5}=max{44,44,41}=44.
Піддерево вершини 1 — це ціле дерево. Відповідь дорівнює maxa=44.
Піддерево вершини 3 містить одну вершину 3. Після збільшення a3 на 43 масив a стане (4,44,47,44,41).
Піддерево вершини 1 — це ціле дерево. Відповідь дорівнює maxa=47.