Pagini recente » Cod sursa (job #588661) | Istoria paginii runda/222222222222222222222222222 | Cod sursa (job #951023) | Cod sursa (job #1836917) | Cod sursa (job #2462887)
#include <fstream>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int oua[100001], n, d[100001];
void citire() {
fin >> n;
for (int i = 0; i < n; ++i) {
fin >> oua[i];
}
}
void init() {
for (int i = 0; i < n; ++i) {
d[i] = 0;
}
}
int dinamica(int st, int fi) {
d[st + 1] = oua[st + 1] + oua[st];
for (int i = st + 2; i <= fi; ++i) {
d[i] = max(oua[i] + oua[i - 1] + d[i - 3], d[i - 1]);
}
return d[fi];
}
int main()
{
oua[n] = oua[0];
oua[n + 1] = oua[1];
citire();
int d1 = dinamica(0, n - 2);
init();
int d2 = dinamica(2, n);
init();
int d3 = dinamica(1, n - 1);
fout << max(d1, max(d2, d3)) << "\n";
return 0;
}