#include <vector>
#include <algorithm>

using namespace std;

int tempo_massimo(int N, int a[], int b[])
{
    vector<int> array1(N);
    vector<int> array2(N);
    vector<int> array3(N);

    array2[0] = a[0];
    array3[0] = b[0];

    for (int i = 1; i < N; i++) {
      array1[i] = max(array1[i-1], max(array2[i-1], array3[i-1])); 
      array2[i] = max(array1[i-1], max(array2[i-1], array3[i-1])) + a[i];
      array3[i] = array1[i-1] + b[i];
    }
      
    return max(array1[N-1], max(array2[N-1], array3[N-1]));
}