Pagini recente » Cod sursa (job #760637) | Cod sursa (job #2826195) | Cod sursa (job #247696) | Cod sursa (job #889408) | Cod sursa (job #1335567)
#include <fstream>
#include <vector>
#define RI register int
using namespace std;
vector <int> V;
ifstream fi ("ssm.in");
ofstream fo ("ssm.out");
int main()
{
int S,N,SMAX;
SMAX = (1LL << 31) - 1;
int B;
fi >> N;
for (RI i = 0; i<N; ++i)
{
fi >> B;
V.push_back(B);
}
fi.close();
S = SMAX = V[0];
int L,R,st,dr;
st = 0;
for(RI i = 1; i<N; ++i)
{
if (S+V[i] > V[i])
S += V[i],dr=i;
else S = V[i],st=i,dr=i;
if (S > SMAX)
{
SMAX = S;
L = st;
R = dr;
}
}
if (S > SMAX)
SMAX = S,L=st,R=dr;
++L,++R;
fo << SMAX << ' ' << L << ' '<< R;
return 0;
}