#include
#include
#include
int minimax(std::vector& arr) {
int n = arr.size();
if (n == 1) {
return arr[0];
}
if (n % 2 == 0) {
return std::max(arr[n-1] + minimax(std::vector(arr.begin(), arr.end()-1)), arr[0] + minimax(std::vector(arr.begin()+1, arr.end())));
}
else {
return std::min(minimax(std::vector(arr.begin(), arr.end()-1)), minimax(std::vector(arr.begin()+1, arr.end())));
}
}
int main() {
int n;
std::cin >> n;
std::vector arr(n);
for (int i = 0; i < n; i++) {
std::cin >> arr[i];
}
int result = minimax(arr);
std::cout << result << std::endl;
return 0;
}