#include <bits/stdc++.h>
using namespace std;
int vecA[200], vecB[200], cr[200], tablitaA[200], tablitaB[200];
int main() {
  int n;
  cin >> n;
  for (int i = 0; i < (int)n - 1; i++) cin >> vecA[i + 1];
  for (int i = 0; i < (int)n - 1; i++) cin >> vecB[i + 1];
  for (int i = 0; i < (int)n; i++) cin >> cr[i];
  for (int i = 0; i < (int)n; i++) {
    tablitaA[i] = tablitaA[i - 1] + vecA[i];
    tablitaB[i] = tablitaB[i - 1] + vecB[i];
  }
  multiset<int> possibles;
  for (int i = 0; i < (int)n; i++) {
    possibles.insert(cr[i] + tablitaA[i] + (tablitaB[n - 1] - tablitaB[i]));
  }
  int resp = 0;
  multiset<int>::iterator it = possibles.begin();
  resp += *it;
  it++;
  resp += *it;
  cout << resp << endl;
}
