TLE
Code:
#include<bits/stdc++.h>
#define ln '\n'
#define N 200001
#define ll long long
#define ull unsigned long long
#define P pair<int, int>
#define Pl pair<ll, ll>
#define vi vector<int>
#define vvi vector<vi>
#define vvvi vector<vvi>
#define vd vector<double>
#define vs vector<string>
#define vb vector<bool>
#define vvb vector<vb>
#define vl vector<long long>
#define vvl vector<vl>
#define vvvl vector<vvl>
#define inf 947483642
#define linf 900000000000000000
#define yes puts("Yes");
#define no puts("No");
#define yesno(ans) cout << (ans ? "Yes" : "No") << ln;
#define sortu(a) sort(a.begin(), a.end());
#define P1 puts("-1");
using namespace std;
const double PI = 3.1415926535897932384626433832795028841971;
int n, q;
ll v;
vl a;
int main() {
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
ll x;
scanf("%lld", &x);
a.push_back(x);
}
scanf("%d", &q);
for (int i = 1; i <= q; i++) {
ll op, x;
scanf("%lld", &op);
if (op == 1) {
scanf("%lld", &x);
v = x;
a.clear();
a.resize(n);
}
if (op == 2) {
ll y;
scanf("%lld%lld", &x, &y);
x--;
a[x] += y;
}
if (op == 3) {
scanf("%lld", &x);
x--;
printf("%lld\n", a[x] + v);
}
}
}