dp
#define _CRT_SECURE_NO_WARNINGS
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int N = 10000 + 5;
int a[N], b[N], c[N], dp[N][4];
int main() {
int n; scanf("%d", &n);
for (int i = 1; i <= n; i++)
scanf("%d", a + i);
for (int i = 1; i <= n; i++)
scanf("%d", b + i);
for (int i = 1; i <= n; i++)
scanf("%d", c + i);
dp[1][1] = b[1], dp[1][0] = a[1];
dp[1][2] = dp[1][3] = -1e9;
for (int i = 2; i <= n; i++) {
dp[i][0] = max(dp[i - 1][1], dp[i - 1][3]) + a[i];
dp[i][1] = max(dp[i - 1][1], dp[i - 1][3]) + b[i];
dp[i][2] = max(dp[i - 1][0], dp[i - 1][2]) + b[i];
dp[i][3] = max(dp[i - 1][0], dp[i - 1][2]) + c[i];
}
printf("%d\n", max(dp[n][0], dp[n][2]));
return 0;
}