Pagini recente » Cod sursa (job #1311069) | Cod sursa (job #2408259) | Cod sursa (job #2294015) | Cod sursa (job #1026385) | Cod sursa (job #743307)
Cod sursa(job #743307)
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream in("ssm.in");
ofstream out("ssm.out");
int pos1,pos2,S,n;
long long suma_cr,suma_mx;
in >> n;
in >> S;
suma_cr = suma_mx = S;
pos1 = pos2 = 1;
int a_pos1 = 1;
for(int i = 2;i<=n;i++)
{
in >> S;
if(S<0)
{
if(suma_cr > suma_mx)
{
pos1 = a_pos1;
pos2 = i-1;
suma_mx = suma_cr;
}
if(S>suma_cr)
{
a_pos1 = i;
suma_cr = S;
}
else
suma_cr+=S;
}
else
{
if(suma_cr > suma_mx)
{
pos1 = a_pos1;
pos2 = i-1;
suma_mx = suma_cr;
}
if(S+suma_cr > S)
{
suma_cr+=S;
}
else
{
suma_cr = S;
a_pos1 = i;
}
}
}
out << suma_mx << " " << pos1 << " " << pos2;
return 0;
}