- Описание
- Отправленные решения
1. Дерево бонсай
Всеволод бывший олимпиадник, раньше на соревнованиях он испытывал широкий спектр эмоций: волнения, азарт, радость от победы, но сейчас все это в прошлом. Сейчас, в воскресный дождливый день, он сидит на своем широком диване напротив камина и читает книгу. Его взгляд падает на ветвленный пожилой бонсай...
Бонсай Всеволода подвешенное двоичное дерево, каждая вершина которого является листом или имеет ровно два потомка. Корень дерева имеет номер 1, а все оставшиеся вершины пронумерованы числами от до . В каждом листе изначально записано число 1. Интересностью вершины назовем наибольший общий делитель чисел, записанных в листах, лежащих в поддереве заданной вершины. Требуется отвечать на запросы следующих видов:
- Умножить число, записанное в вершине на , гарантируется, что лист;
- Вывести интересность вершины по модулю .
Формат ввода
В первой строке входных данных содержатся числа и () размер дерева и количество запросов, соответственно.
В следующей строке записано число номера предков вершин с номерами соответственно ().
Далее в строках описаны запросы, отвечать на которые требуется последовательно, каждый запрос относится к одному из двух типов:
1 v x
значит, что число в листе с номером умножить на (, ).2 v
означает, что надо вывести интересность вершины с номером по модулю ().
Формат вывода
Для каждого запроса типа в отдельной строке выведите интересность сооответствующей вершины по модулю .
Ограничения
Ограничение времени
2 с
Ограничение памяти
512 МБ
Пример 1
3 10
1 1
1 2 13
1 3 44340
1 3 22553
2 1
2 2
2 3
1 2 2
2 1
2 2
2 3
1
13
13
2
26
13