#include<bits/stdc++.h>
using namespace std;
const int nn=2e5+5;
int n,a[nn],block,cnt[nn],wz[nn],m;
int main(){
std::cin.tie(nullptr);
std::ios::sync_with_stdio(false);
cin>>n;
for(int i=0;i<n;i++) cin>>a[i];
block=sqrt(n);
for(int i=0;i<n;i++){
int br=min(int(ceil(i*1.0/(block*1.0))*block)-1,n-1);
int j=i,sum=0;
while(1){
j=j+a[j];
sum++;
if(j>br) break;
}
cnt[i]=sum,wz[i]=j;
}
cin>>m;
for(int i=1;i<=m;i++){
int op;
cin>>op;
if(op==1){
int x;
cin>>x;
int step=0;
while(x<n){
step+=cnt[x];
x=wz[x];
}
cout<<step<<endl;
}
else{
int x,k;
cin>>x>>k;
a[x]=k;
int bl=(ceil(i*1.0/(block*1.0))-1)*block,br=min(int(ceil(i*1.0/(block*1.0))*block)-1,n-1);
for(int j=x;j>=bl;j--){
int nxt=j+a[j];
if(nxt>br) cnt[j]=1,wz[j]=nxt;
else cnt[j]=cnt[nxt]+1,wz[j]=wz[nxt];
}
}
}
return 0;
}