#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
ll mss(vector<ll>& a1,vector<ll>& a2) {
ll n = a1.size();
if(n==0)return 0;
if(n==1){
return max(a1[0],a2[0]);
}
ll dp[n];
dp[0]=max(a1[0],a2[0]);
dp[1]=max({a1[1],a2[1],dp[0]});
for(ll i=2;i<n;i++)
{
dp[i]=max(max(a1[i],a2[i])+dp[i-2],dp[i-1]);
}
return dp[n-1];
}
int main() {
ll n;
cin>>n;
vector<ll> a1(n),a2(n);
for(ll i=0;i<n;i++)cin>>a1[i];
for(ll i=0;i<n;i++){
cin>>a2[i];
}
cout<<mss(a1,a2)<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGludCBsbDsKCmxsIG1zcyh2ZWN0b3I8bGw+JiBhMSx2ZWN0b3I8bGw+JiBhMikgewogICAgbGwgbiA9IGExLnNpemUoKTsKICAgIGlmKG49PTApcmV0dXJuIDA7CiAgICBpZihuPT0xKXsKICAgIAlyZXR1cm4gbWF4KGExWzBdLGEyWzBdKTsKICAgIH0KICAgIGxsIGRwW25dOwogICAgCiAgICBkcFswXT1tYXgoYTFbMF0sYTJbMF0pOwogICAgZHBbMV09bWF4KHthMVsxXSxhMlsxXSxkcFswXX0pOwogICAgCiAgICBmb3IobGwgaT0yO2k8bjtpKyspCiAgICB7CiAgICAgICAgCWRwW2ldPW1heChtYXgoYTFbaV0sYTJbaV0pK2RwW2ktMl0sZHBbaS0xXSk7CiAgICAgICAgfQogICAgcmV0dXJuIGRwW24tMV07Cn0KCmludCBtYWluKCkgewogICAgbGwgbjsKICAgIGNpbj4+bjsKICAgIHZlY3RvcjxsbD4gYTEobiksYTIobik7CiAgICAKICAgIGZvcihsbCBpPTA7aTxuO2krKyljaW4+PmExW2ldOwogICAgZm9yKGxsIGk9MDtpPG47aSsrKXsKICAgIAljaW4+PmEyW2ldOwogICAgfQogICAgCiAgICBjb3V0PDxtc3MoYTEsYTIpPDxlbmRsOwogICAgcmV0dXJuIDA7Cn0=