#include <bits/stdc++.h>
using namespace std;
void pass() { return; }
const double EPS = 1e-6;
mt19937 rnd((rand() << 15 + rand()));
const long long MOD = 1e9 + 7;
const long long BIG_MOD = 1e18 + 7;
const long long MAXN = 1e5 + 7;
long long a[MAXN], b[MAXN], pref0[MAXN], pref1[MAXN];
vector<long long> v = {-BIG_MOD, BIG_MOD};
void print(long long sum) {
  long long l = 0;
  long long r = v.size() - 1;
  while (l < r - 1) {
    long long mid = (l + r) / 2;
    if (sum + v[mid] <= 0) {
      l = mid;
    } else {
      r = mid;
    }
  }
  cout << min(abs(v[l] + sum), abs(v[l + 1] + sum)) << '\n';
}
signed main() {
  cout.tie(NULL);
  cout.precision(20);
  ios_base::sync_with_stdio(false);
  long long n, m, q;
  cin >> n >> m >> q;
  long long sum = 0;
  for (long long i = 0; i < n; ++i) {
    cin >> a[i];
    if ((i + 1) % 2) {
      sum += a[i];
    } else {
      sum -= a[i];
    }
  }
  for (long long i = 0; i < m; ++i) {
    cin >> b[i];
    if ((i + 1) % 2) {
      pref0[i + 1] = pref0[i] + b[i];
      pref1[i + 1] = pref1[i];
    } else {
      pref0[i + 1] = pref0[i];
      pref1[i + 1] = pref1[i] + b[i];
    }
    if (i >= n - 1) {
      long long l = i + 1 - n + 1;
      long long sum0 = pref0[i + 1] - pref0[l - 1];
      long long sum1 = pref1[i + 1] - pref1[l - 1];
      if (l % 2) {
        v.push_back(sum1 - sum0);
      } else {
        v.push_back(sum0 - sum1);
      }
    }
  }
  sort(v.begin(), v.end());
  print(sum);
  long long l, r, x;
  for (long long i = 0; i < q; ++i) {
    cin >> l >> r >> x;
    long long len = r - l + 1;
    if (l % 2) {
      sum += x * (len % 2);
    } else {
      sum -= x * (len % 2);
    }
    print(sum);
  }
  return 0;
}
