import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int[] steps = new int[N+1];
int[] db = new int[N+2];
db[0] = 0;
for (int i = 1; i <= N; i++)
{
steps[i] = Integer.parseInt(br.readLine());
}
db[1] = steps[1];
if (N>=2)
{
db[2] = Math.max(steps[1]+steps[2],steps[2]);
}
//점화식을 사용하는 문제이다.!!
for (int i = 3; i <= N; i++)
{
db[i] = Math.max(db[i-2], db[i-3]+steps[i-1]) + steps[i] ;
}
//db[4] = Math.max(db[2],db[1]+steps[3]) + steps[4] ;
System.out.println(db[N]);
}
}
점화식을 세우는게 관건인 문제이고 또한 N이 2일경우에는 배열의 크기가 맞지 않아 런타임 오류가 난다. 이것을 다 생각해서 풀어야 하는 문제였다.