#P0540. 序列上的带修跳跃(弹飞绵羊)

序列上的带修跳跃(弹飞绵羊)

题目描述

数轴上有 nn 个弹力装置,编号 0n10\sim n-1,第 ii 个弹力系数为 kik_iki1k_i\ge 1)。一枚棋子落在装置 ii 上时被弹到 i+kii+k_i;若 i+kini+k_i\ge n 则被弹出、离开装置区。

处理 mm 个操作:

  • 1 i:询问棋子从装置 ii 出发,被弹几次后弹出界;
  • 2 i x:将装置 ii 的弹力系数 kik_i 改为 xx

输入格式

第一行一个整数 nn

第二行 nn 个正整数 k0,k1,,kn1k_0,k_1,\dots,k_{n-1}

第三行一个整数 mm

接下来 mm 行,每行 1 i2 i x

输出格式

对每个 1 i 操作输出一行,表示弹出所需次数。

样例

4
1 2 1 1
3
1 1
2 1 1
1 1
2
3

数据范围

1n2×1051\le n\le 2\times10^51m1051\le m\le 10^51ki,x1091\le k_i,x\le 10^9