#include <bits/stdc++.h>
using namespace std;
const int maxn = 3010;
int dp[3][maxn];
int dp2[4][maxn];
int main() {
  int n;
  while (~scanf("%d", &n)) {
    memset(dp2, 0, sizeof(dp2));
    for (int i = 0; i < n; i++) scanf("%d", &dp[0][i]);
    for (int i = 0; i < n; i++) scanf("%d", &dp[1][i]);
    for (int i = 0; i < n; i++) scanf("%d", &dp[2][i]);
    dp2[0][0] = dp[0][0];
    dp2[1][0] = dp[1][0];
    for (int i = 1; i < n; i++) {
      dp2[0][i] += dp[0][i] + max(dp2[3][i - 1], dp2[1][i - 1]);
      dp2[1][i] += dp[1][i] + max(dp2[3][i - 1], dp2[1][i - 1]);
      dp2[2][i] += dp[1][i] + max(dp2[0][i - 1], dp2[2][i - 1]);
      dp2[3][i] += dp[2][i] + max(dp2[0][i - 1], dp2[2][i - 1]);
    }
    printf("%d\n", max(dp2[0][n - 1], dp2[2][n - 1]));
  }
  return 0;
}
