Подземная лаборатория

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Как мы знаем, Элой и Варл отправились на поиски резервной GAIA. Одно из мест, где могла бы она находиться --- заброшенная подземная лаборатория компании <<Далекий Зенит>>.

Лаборатория состоит из nn комнат, расположенных в горе. Комната с номером ii находится на глубине d_i0d\_i \geqslant 0 метров от уровня земли. Если d_i=0d\_i = 0, то комната находится на поверхности.

Поскольку лаборатория долгое время не использовалась, комнаты успели замерзнуть и обледенеть, и теперь в комнате номер ii расположено a_ia\_i единиц льда. Чтобы избавляться от льда и талой воды, между комнатами была построена сеть из nn труб. Для каждого ii из комнаты номер ii выходит ровно одна труба вниз; эта труба ведет в комнату номер b_ib\_i, расположенную на большей глубине. На самой большой глубине расположена единственная комната; труба из нее ведет в подземное озеро.

Пропускная способность каждого метра трубы равна единице воды в минуту. Это означает, что если в комнате есть вода, за оду минуту по трубе из нее вытекает ровно одна единица воды. Кроме того, если в момент времени tt минут единица воды начала течь по трубе длины d_b_id_id\_{b\_i} - d\_i из комнаты ii в комнату b_ib\_i, то эта единица попадет в комнату b_ib\_i в момент времени t+d_b_id_it + d\_{b\_i} - d\_i минут.

Изначально вода во всех комнатах лаборатории находилась в замерзшем состоянии. Из-за нарушения биосферы в момент времени 00 минут лед в комнатах на поверхности мгновенно растаял и начал течь по трубам вниз.

Когда растаявшая вода впервые доходит до низа трубы, ведущей в вершину ii, весь лед в этой комнате мгновенно тает, и вода начинает течь по трубе ib_ii \to b\_i со скоростью 11 метр в минуту. Обратите внимание, что лед тает моментально, и вода не задерживается в комнате. Другими словами, если к моменту времени tt минут в комнату ii попала первая единица воды, к тому же моменту времени вода заполнит трубу ib_ii \to b\_i на одну единицу. Комнаты можно считать неограниченными по объему, то есть вмещающими произвольное количество единиц воды.

Элой подозревает, что оборудование, которое долго находилось в комнатах с большим уровнем воды, могло испортится. Поэтому она хочет узнать, сколько минут в комнате r_ir\_i талая вода была на уровне не меньше x_ix\_i (в комнате находилось хотя бы x_ix\_i единиц воды). Помогите героине узнать ответы на mm запросов такого вида.

입력

В первой строке через пробел даны два целых числа nn и mm --- количество комнат в лаборатории и количество запросов (1n1051 \leqslant n \leqslant 10^5; 1m21051 \leqslant m \leqslant 2 \cdot 10^5).

В следующих nn строках дается описание комнат: в ii-й через пробел перечислены три целых числа b_ib\_i, d_id\_i и a_ia\_i --- номер комнаты, в которую ведет труба из комнаты ii, глубина комнаты, и количество замерзшей воды в ней (0b_in0 \leqslant b\_i \leqslant n; 0d_i,a_i1060 \leqslant d\_i, a\_i \leqslant 10^6).

Равенство b_i=0b\_i = 0 означает, что вода из этой комнаты стекает в подземное озеро неограниченного объема. Гарантируется, что существует единственное ii, для которого b_i=0b\_i = 0.

Равенство d_i=0d\_i = 0 означает, что комната номер ii находится на поверхности. Гарантируется, что если b_i>0b\_i > 0, то d_i<d_b_id\_i < d\_{b\_i}.

В ii-й из mm следующих строк через пробел даны два целых числа r_ir\_i и x_ix\_i --- номер комнаты и интересущий уровень воды в ней в рамках ii-го запроса (1r_in1 \leqslant r\_i \leqslant n; 1x_i1091 \leqslant x\_i \leqslant 10^9).

출력

В mm строках выведите по одному целому числу --- время (в минутах), в течение которого в комнате r_ir\_i уровень воды был не меньше x_ix\_i.

Отвечая на запросы, следует учитывать только то время, когда вода находилась в жидком состоянии.

힌트

Рассмотрим первый тест:

  1. В момент времени 00 минут вода была в замерзшем состоянии. Сразу после этого лед в верхних комнатах начинает таять.
  2. Через минуту в первой и второй комнатах будут одна и две единицы воды соответственно. В трубах 131 \to 3 и 232 \to 3 находится по единице воды.
  3. Две минуты от начала в первой и второй комнатах будет ноль и одна единица воды, соответственно, а в трубах из них вниз --- по две единицы воды.
  4. Поскольку трубы заполнены полностью, в следующий же момент лед в третьей комнате растает, и начнет стекать в озеро со скоростью 11 ед./минуту, тогда как в комнату из двух труб будет втекать 22 ед./минуту.
  5. К моменту времени 33 минуты, таким образом, в третьей комнате будет две единицы воды, а комнаты 11 и 22 будут пусты. В трубе 131 \to 3 будет оставаться еще одна единица воды в самом низу трубы, тогда как труба 232 \to 3 будет полной.
  6. Еще через минуту в третьей комнате накопится три единицы воды, а труба 131 \to 3 опустеет, из-за чего уровень воды в третьей комнате перестанет расти.
  7. В момент времени 55 минут в третьей комнате все еще три единицы воды, но теперь в трубе 232 \to 3 вода закончилась, значит за каждую следующую минуту количество воды в комнате 33 будет уменьшаться на 11.

Таким образом, ответы на запросы будут такими:

  1. В первой комнате две единицы воды находятся только в момент времени 00, после чего это количество сразу начинает уменьшаться, поэтому ни на каком положительном отрезке времени уровень воды в первой комнате не достигает 22.
  2. Во второй комнате уровень воды никогда не равен 44.
  3. При этом уровень воды больше либо равен 11 между моментами времени 00 и 22, то есть ровно 22 минуты.
  4. В третьей комнате уровень воды становится равен 11, как только лед тает (в момент времени 22), и держится 1\geqslant 1 до момента времени 77, после чего он упадет ниже.
  5. Аналогично, он не меньше 22 между моментами времени 33 и 66.
  6. И не меньше 33 между моментами времени 44 и 55.

Ниже приведено изменение заполненности комнат для второго примера в первые 10 минут, начиная с 0.