Атомы

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

문제

В лаборатории аномальных материалов антинаучно-исследовательского комплекса <<Black Mesa>> проводят эксперименты с недавно разработанным графитовым наностержнем. Графитовый наностержень представляет собой nn последовательно соединенных атомов углерода, находящихся на одной прямой. Каждый атом имеет определенный заряд.

Для проведения эксперимента, стержень располагают вертикально. Пронумеруем атомы от 1 до nn снизу вверх. Между двумя атомами образуется сильная связь, если это соседние атомы и верхний из них имеет заряд ровно на один больше, чем нижний. Иными словами, атомы aa и bb соединены сильной связью, если a=b+1a = b + 1 и q_a=q_b+1q\_a = q\_b + 1, где q_iq\_i --- заряд ii-го атома. Цепочкой атомов назовем несколько последовательных атомов, соединенных сильными связями.

Вчера был проведен очередной эксперимент. Перед началом эксперимента каждому атому установили определенный заряд: ii-му атому установили заряд q_iq\_i.

Во время эксперимента ученые проводили действия двух типов:

  • у всех атомов с номерами от l_il\_i до r_ir\_i, включительно, заряд изменяли на величину d_id\_i;
  • временно разрушали все сильные связи атомов, кроме тех, которые соединяют атомы с номерами от l_il\_i до r_ir\_i, включительно, и измеряли длину самой длинной цепочки атомов среди оставшихся сильных связей. Затем восстанавливали все временно разрушенные связи.

Было произведено mm действий, однако выяснилось, что в результате побочного эффекта эксперимента запись результатов измерений оказалась утеряна. Для продолжения работы с графитовым наностержнем необходимо восстановить результаты вчерашних измерений. К счастью, сохранился план действий, произведенных во время эксперимента. Помогите ученым продолжить исследования, восстановите результаты измерений.

입력

В первой строке находится одно целое число nn (1n100,0001 \le n \le 100\\,000) --- количество атомов в наностержне. Во второй строке находятся nn чисел q_iq\_i (q_i109|q\_i| \le 10^9) --- начальный заряд ii-го атома. В третьей строке находится одно целое число mm (0m100,0000 \le m \le 100\\,000) --- количество действий в эксперименте. В следующих mm строках содержится описание эксперимента.

Если строка начинается с символа <<+>>, очередное действие --- изменение заряда атомов. В таком случае, далее в этой строке находятся три целых числа: l_il\_i, r_ir\_i и d_id\_i (1l_ir_in1 \le l\_i \le r\_i \le n, d_i109|d\_i| \le 10^9), которые характеризуют это действие.

Если строка начинается с символа <<?>>, очередное действие --- второго типа. В таком случае, далее в этой строке находятся два целых числа: l_il\_i и r_ir\_i (1l_ir_in1 \le l\_i \le r\_i \le n), которые характеризуют это действие.

출력

Для каждого действия второго типа выведите в новой строке одно число --- длину наибольшей цепочки.

힌트

Иллюстрация к примеру. Пунктиром выделены сильные связи, которые разрушаются на время действия второго типа. Для каждого действия второго типа выделены отрезок запроса и самая длинная цепочка.