#include <bits/stdc++.h>
using namespace std;
int fms(int arr[], int n)
{
int incl = arr[0];
int excl = 0;
int excl_new;
int i;
for (i = 1; i < n; i++)
{
/* current max excluding i */
excl_new = (incl > excl)? incl: excl;
/* current max including i */
incl = excl + arr[i];
excl = excl_new;
}
/* return max of incl and excl */
return ((incl > excl)? incl : excl);
}
int dp(int arr[], int n){
int dp[1000] = {0};
dp[1] = arr[1];
for(auto i = 2; i < n; i++)
dp[i] = max(dp[i-2] + arr[i], dp[i-1]);
return dp[n-1];
}
int main(){
int arr[10001] = {0};
int n;
cin >> n;
for (auto i = 1; i<=n; i++) cin >> arr[i];
cout << fms(arr, n+1) << endl;
cout << dp(arr, n+1) << endl;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgZm1zKGludCBhcnJbXSwgaW50IG4pIAp7IAogIGludCBpbmNsID0gYXJyWzBdOyAKICBpbnQgZXhjbCA9IDA7IAogIGludCBleGNsX25ldzsgCiAgaW50IGk7IAogIAogIGZvciAoaSA9IDE7IGkgPCBuOyBpKyspIAogIHsgCiAgICAgLyogY3VycmVudCBtYXggZXhjbHVkaW5nIGkgKi8KICAgICBleGNsX25ldyA9IChpbmNsID4gZXhjbCk/IGluY2w6IGV4Y2w7IAogIAogICAgIC8qIGN1cnJlbnQgbWF4IGluY2x1ZGluZyBpICovCiAgICAgaW5jbCA9IGV4Y2wgKyBhcnJbaV07IAogICAgIGV4Y2wgPSBleGNsX25ldzsgCiAgfSAKICAKICAgLyogcmV0dXJuIG1heCBvZiBpbmNsIGFuZCBleGNsICovCiAgIHJldHVybiAoKGluY2wgPiBleGNsKT8gaW5jbCA6IGV4Y2wpOyAKfSAKCmludCBkcChpbnQgYXJyW10sIGludCBuKXsKCWludCBkcFsxMDAwXSA9IHswfTsKCWRwWzFdID0gYXJyWzFdOwoJZm9yKGF1dG8gaSA9IDI7IGkgPCBuOyBpKyspCgkJZHBbaV0gPSBtYXgoZHBbaS0yXSArIGFycltpXSwgZHBbaS0xXSk7CgkKCXJldHVybiBkcFtuLTFdOwp9CgppbnQgbWFpbigpewoJaW50IGFyclsxMDAwMV0gPSB7MH07CglpbnQgbjsKCWNpbiA+PiBuOwoJZm9yIChhdXRvIGkgPSAxOyBpPD1uOyBpKyspIGNpbiA+PiBhcnJbaV07Cgljb3V0IDw8IGZtcyhhcnIsIG4rMSkgPDwgZW5kbDsKCWNvdXQgPDwgZHAoYXJyLCBuKzEpIDw8IGVuZGw7Cn0=