#include<iostream>
#include<cmath>
using namespace std;
/**寻找不相邻的数的最大和 如4 1 1 9 3 最大值为4+9=13
用dp数组来表示dp[i] 为到第i个为止 最大和是多少
状态转移方程为
要么选择第i个 则
值为第i个的值+dp[i-2] 表示到达第i-2个为止最大的和 因为第i-2才是与第i个不相邻的
要么不选第i个 则最大为dp[i-1] 到达第i个的前一个可能的最大值和
*/
int a[100];
int dp[100];
int main(void){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
dp[0]=0;
dp[1]=a[1];
for(int i=2;i<=n;i++){
dp[i]=max(dp[i-2]+a[i],dp[i-1]);
}
cout<<dp[n]<<endl;//输出的结果 即为到达第n个为止最大的和
}