#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=2e5+5;
map<int,int> mp;
struct node{
int next,data;
node(int _next=-1,int _data=-1){
next=_next;
data=_data;
}
}a[maxn];
int tot,n,m,h,t,b[maxn],c;
void init(){
a[0]=node(-1,-1);
tot++;
}
void add_back(int node_id,int z){
int new_id=tot;
tot++;
a[new_id]=node(a[node_id].next,z);
a[node_id].next=new_id;
mp[z]=a[node_id].next;
}
void print(int i){
cout<<a[i].data<<'\n';
}
void water(int i,int x,int y){
a[i].data+=x;
if(a[i].data>=mp[i]){
a[y-1].next=a[i].next;
water(i+1,a[i].data-mp[i],y);
a[i].data=mp[i];
}
return ;
}
signed main(){
cin>>n;
for(int i=1;i<=n;++i){
cin>>b[i];
mp[i]=b[i];
add_back(i+1,0);
}
cin>>m;
for(int i=1;i<=m;++i){
cin>>c;
if(c==1){
cin>>h>>t;
water(h,t,h);
}
else{
cin>>h;
print(h);
}
}
return 0;
}
样例1输入: 2 5 10 6 1 1 4 2 1 1 2 5 1 1 4 2 1 2 2
样例1输出: 4 5 8
我的输出:4 5 7
样例2输入:3 5 10 8 6 1 1 12 2 2 1 1 6 1 3 2 2 2 2 3
样例2输出:7 10 5
我的输出:7 10 4
请求大佬帮助,谢谢!