#include <bits/stdc++.h>
using namespace std;
const int maxn = 100005;
int b[maxn];
int main() {
  ios_base::sync_with_stdio(false);
  int n, m, q;
  cin >> n >> m >> q;
  long long s = 0;
  for (int i = 0; i < n; i++) {
    int x;
    cin >> x;
    if (i & 1) {
      s -= x;
    } else {
      s += x;
    }
  }
  for (int i = 0; i < m; i++) {
    cin >> b[i];
  }
  set<long long> st;
  long long t = 0;
  for (int i = 0; i < n; i++) {
    if (i & 1) {
      t -= b[i];
    } else {
      t += b[i];
    }
  }
  st.insert(t);
  for (int i = n; i < m; i++) {
    t -= b[i - n];
    t *= -1;
    if (n & 1) {
      t += b[i];
    } else {
      t -= b[i];
    }
    st.insert(t);
  }
  set<long long>::iterator it = st.lower_bound(s);
  long long ans = (long long)(1e18);
  if (it != st.end()) {
    ans = min(ans, abs(s - *it));
  }
  if (it != st.begin()) {
    it--;
    ans = min(ans, abs(s - *it));
  }
  cout << ans << endl;
  for (int i = 0; i < q; i++) {
    int l, r, x;
    cin >> l >> r >> x;
    if ((r - l + 1) & 1) {
      if (l & 1) {
        s += x;
      } else {
        s -= x;
      }
    }
    it = st.lower_bound(s);
    ans = (long long)(1e18);
    if (it != st.end()) {
      ans = min(ans, abs(s - *it));
    }
    if (it != st.begin()) {
      it--;
      ans = min(ans, abs(s - *it));
    }
    cout << ans << endl;
  }
  return 0;
}
