eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Дерево

Дерево

Маленькая Аня любит рисовать. Сегодня в школе она услышала о графах и деревьях. Придя домой, она решила нарисовать дерево. Однако ей изображенные деревья не понравились. Тогда Аня взяла свои рисунки и покрасила все вершины дерева. Однако через некоторое время ей не понравилась раскраска, и она решила снова перекрасить вершины.

Аня считает, что районом вершины v радиуса k называется множество вершин, доступных из v на пути из не более k ребер. Дерево не ориентированное, по каждому ребру можно передвигаться в обоих направлениях. Иногда, когда она не занята очередным перекрашиванием вершин, Аня хочет узнать, сколько различных цветов присутствует в некотором районе. Но ей трудно ответить на такие вопросы, поэтому Аня просит Вас ей помочь.

Входные данные

Первая строка содержит три целых числа n, k и c (1n50000, 0k50, 1c50): количество вершин в дереве, максимальный радиус района, и количество разных цветов на палитре Ани (цвета пронумерованы от 1 до c). Вторая строка содержит n целых чисел ci (1cic), задающие цвета вершин изначально. Следующие n - 1 строка содержит описание дерева: i-ая из них содержит индексы вершин ai и bi (1ai, bin), соединенных i-ым ребром. Гарантируется, что граф является деревом.

Следующая строка содержит количество q (1q105) запросов Ани. Следующие q строк содержат описание запросов в следующем формате. Первым идет di (1di2) - тип запроса.

если di = 1, то далее следуют два целых числа vi и wi (1vin, 1wic): номер перекрашиваемой вершины и ее новый цвет.

если di = 2, то далее следуют два целых числа vi и ki (1vin, 0kik): номер вершины - центра района и его радиус.

Выходные данные

Для каждого запроса второго типа вывести в отдельной строке количество различных цветов в заданном районе.

Лимит времени 1 секунда
Лимит использования памяти 512 MiB
Входные данные #1
5 2 3
2 1 1 3 2
1 2
1 3
1 4
4 5
6
2 4 1
2 1 1
1 4 1
2 1 1
1 1 1
2 1 1
Выходные данные #1
2
3
2
1
Источник 2013 Петрозаводск, Moscow SU ST + NNSU Contest, День 2, Август 24, Задача D