Pagini recente » Cod sursa (job #159375) | Cod sursa (job #1085995) | Cod sursa (job #1208117) | Cod sursa (job #514938) | Cod sursa (job #2672224)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("oo.in");
ofstream out("oo.out");
const int Nmax = 1e5 + 5,
inf = 0x3f3f3f3f;
int v[Nmax],
n;
int main()
{
in>>n;
for(int i = 1; i <= n; i++)
in>>v[i];
int ma = inf;
for(int i = 1; i <= 3; i++)
{
int dp[Nmax] = {0};//suma maxima pana la pozitia i
if(i == 1)
dp[1] = v[1];
else if(i == 2)
dp[1] = v[2] + v[3];
else
dp[1] = v[n] + v[1];
for(int j = 3; j <= n; j++)
dp[j] = max(dp[j-1], v[j] + v[j-1] + dp[j-3]);
if(ma > dp[n])
ma = dp[n];
}
out<<ma;
}