#include <bits/stdc++.h>
using namespace std;
void ga(int N, int *A) {
  for (int i(0); i < N; i++) scanf("%d", A + i);
}
int S[(1 << 18)], dp[(1 << 18)][2], N;
int dyn(int u, bool x) {
  if (u == N) return x ? S[N - 1] : 0;
  int &v = dp[u][x];
  if (~v) return v;
  if (!x) return v = dyn(u + 1, 1);
  return v = max(S[u - 1] - dyn(u, 0), dyn(u + 1, 1));
}
int main(void) {
  scanf("%d", &N), ga(N, S), (memset(dp, -1, sizeof(dp)));
  for (int k(1); k < N; k++) S[k] += S[k - 1];
  printf("%d\n", dyn(1, 0));
  return 0;
}
