#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e5 + 10;
int N, M, Q;
long long sa, pb[MAXN];
set<long long> st;
long long off;
long long calc() {
  long long res = min(llabs(*st.begin() + off), llabs(*st.rbegin() + off));
  auto it = st.lower_bound(-off);
  if (it != st.end()) {
    res = min(res, (*it) + off);
  }
  if (it != st.begin()) {
    it--;
    res = min(res, -((*it) + off));
  }
  return res;
}
int main() {
  scanf("%d %d %d", &N, &M, &Q);
  for (int i = 1; i <= N; i++) {
    long long a;
    scanf("%lld", &a);
    if (i % 2 == 0) {
      a *= -1;
    }
    sa += a;
  }
  for (int i = 1; i <= M; i++) {
    scanf("%lld", &pb[i]);
    if (i % 2) {
      pb[i] *= -1;
    }
    pb[i] += pb[i - 1];
  }
  for (int i = 0; i <= M - N; i++) {
    long long sb = pb[i + N] - pb[i];
    if (i % 2) {
      sb *= -1;
    }
    st.insert(sa + sb);
  }
  printf("%lld\n", calc());
  for (int qi = 1; qi <= Q; qi++) {
    int lt, rt, x;
    scanf("%d %d %d", &lt, &rt, &x);
    if (lt % 2 == rt % 2) {
      if (lt % 2) {
        off += x;
      } else {
        off -= x;
      }
    }
    printf("%lld\n", calc());
  }
}
