Pagini recente » Cod sursa (job #1104663) | Cod sursa (job #2890559) | Cod sursa (job #1041360) | Cod sursa (job #3268213) | Cod sursa (job #3201107)
#include <fstream>
#include <iostream>
using namespace std;
const int Vmax = 100001;
int a[Vmax], dp[Vmax];
int main(){
ifstream fin("oo.in");
ofstream fout("oo.out");
int n;
fin>>n;
for(int i=1;i<=n;i++)
fin>>a[i];
dp[1]=0;
for(int i=2;i<=n-1;i++){
dp[i] = max(dp[i-1], a[i] + a[i-1] + dp[i-3]);
}
int solutie=dp[n-1];
dp[2]=0;
for(int i=3;i<=n;i++){
dp[i] = max(dp[i-1], a[i] + a[i-1] + dp[i-3]);
}
solutie=max(solutie, dp[n]);
dp[1]=dp[3]=0;
dp[2]=a[1]+a[2];
for(int i=4;i<=n-2;i++){
dp[i] = max(dp[i-1], a[i] + a[i-1] + dp[i-3]);
cout<<dp[i]<<" ";
}
cout<<dp[n-2];
solutie=max(solutie, dp[n-2]);
fout<<solutie;
}