#include <bits/stdc++.h>
using namespace std;
int main() {
  int i, n, q;
  ios::sync_with_stdio(false);
  cin.tie(0), cout.tie(0);
  cin >> n;
  vector<int> a(n + 1);
  long long ans = 0;
  for (i = 1; i <= n; i++) {
    cin >> a[i];
    ans += a[i];
  }
  map<pair<int, int>, int> mp;
  vector<int> in_deg(n + 1);
  cin >> q;
  while (q--) {
    int s, t, u;
    cin >> s >> t >> u;
    if (mp.find({s, t}) != mp.end()) {
      int cur = mp[{s, t}];
      ans -= max(0, a[cur] - in_deg[cur]);
      in_deg[cur]--;
      ans += max(0, a[cur] - in_deg[cur]);
      mp.erase(mp.find({s, t}));
    }
    if (u > 0) {
      mp[{s, t}] = u;
      ans -= max(0, a[u] - in_deg[u]);
      in_deg[u]++;
      ans += max(0, a[u] - in_deg[u]);
    }
    cout << ans << "\n";
  }
  return 0;
}
