#include <bits/stdc++.h>
using namespace std;
int dp[3001][2];
int n, a[3001], b[3001], c[3001];
int oo = 1 << 30;
int calc(int i, bool l) {
  if (i == n + 1) return l ? 0 : -oo;
  if (dp[i][l] != -1) return dp[i][l];
  int best = 0;
  if (l == 0) {
    best = max(best, calc(i + 1, 1) + a[i]);
    best = max(best, calc(i + 1, 0) + b[i]);
  } else {
    best = max(best, calc(i + 1, 1) + b[i]);
    best = max(best, calc(i + 1, 0) + c[i]);
  }
  return dp[i][l] = best;
}
int main() {
  memset(dp, -1, sizeof(dp));
  cin >> n;
  for (int i = 1; i <= n; ++i) cin >> a[i];
  for (int i = 1; i <= n; ++i) cin >> b[i];
  for (int i = 1; i <= n; ++i) cin >> c[i];
  cout << calc(1, 0) << endl;
  return 0;
}
