#include <bits/stdc++.h>
using namespace std;
int main() {
  int num_house;
  vector<int> first_row;
  vector<int> second_row;
  vector<int> avenue;
  int i, j, timee;
  cin >> num_house;
  for (i = 0; i < num_house - 1; i++) {
    cin >> timee;
    first_row.push_back(timee);
  }
  for (i = 0; i < num_house - 1; i++) {
    cin >> timee;
    second_row.push_back(timee);
  }
  for (i = 0; i < num_house; i++) {
    cin >> timee;
    avenue.push_back(timee);
  }
  int min_time1 = 100000;
  int min_time2 = 100000;
  vector<int> fr_left_sum(num_house);
  vector<int> sr_right_sum(num_house);
  fr_left_sum[0] = 0;
  for (i = 1; i < num_house; i++) {
    fr_left_sum[i] = fr_left_sum[i - 1] + first_row[i - 1];
  }
  sr_right_sum[num_house - 1] = 0;
  for (i = num_house - 2; i >= 0; i--) {
    sr_right_sum[i] = sr_right_sum[i + 1] + second_row[i];
  }
  for (i = 0; i < num_house; i++) {
    if (min_time1 > fr_left_sum[i] + sr_right_sum[i] + avenue[i]) {
      min_time2 = min_time1;
      min_time1 = fr_left_sum[i] + sr_right_sum[i] + avenue[i];
    } else if (min_time2 > fr_left_sum[i] + sr_right_sum[i] + avenue[i]) {
      min_time2 = fr_left_sum[i] + sr_right_sum[i] + avenue[i];
    }
  }
  cout << min_time1 + min_time2 << endl;
  return 0;
}
