#include <bits/stdc++.h>
using namespace std;
int n, a[5000], b[5000], c[5000], dp[5000][2];
bool vis[5000][2];
int solve(int pos, bool stat) {
  if (!vis[pos][stat]) {
    int ans1, ans2;
    if (stat && pos > 0 && pos < n - 1) {
      ans1 = solve(pos + 1, true) + b[pos];
      ans2 = solve(pos + 1, false) + c[pos];
    } else {
      if ((!stat || pos == 0) && pos < n - 1) {
        ans1 = solve(pos + 1, true) + a[pos];
        ans2 = solve(pos + 1, false) + b[pos];
      } else {
        if (stat)
          ans1 = b[pos], ans2 = b[pos];
        else
          ans1 = a[pos], ans2 = a[pos];
      }
    }
    dp[pos][stat] = max(ans1, ans2);
    vis[pos][stat] = true;
  }
  return dp[pos][stat];
}
int main() {
  cin >> n;
  for (int i = 0; i < n; i++) vis[i][0] = false, vis[i][1] = false;
  for (int i = 0; i < n; i++) cin >> a[i];
  for (int i = 0; i < n; i++) cin >> b[i];
  for (int i = 0; i < n; i++) cin >> c[i];
  cout << solve(0, false) << endl;
  return 0;
}
