Pagini recente » Cod sursa (job #2126207) | Cod sursa (job #2717105) | Cod sursa (job #3184874) | Cod sursa (job #2210965) | Cod sursa (job #2336927)
#include <iostream>
#include<fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int* v;
int n;
void read()
{
in>>n;
v=new int[n];
for(int i=0; i<n; i++)
in>>v[i];
}
void res()
{
int maxend;
int maxbegin;
int maxx=-999;
int suma=v[0];
int beginx=0;
int endx=0;
for(int i=1; i<n; i++)
{
if(v[i]+suma<v[i])
{
endx=i;
suma=v[i];
beginx=i;
}
else
{
endx++;
suma+=v[i];
}
if(suma>maxx){
maxbegin=beginx;
maxend=endx;
}
maxx=max(suma,maxx);
}
out<<maxx<<" "<<maxbegin+1<<" "<<maxend+1;
}
int main()
{
read();res();
return 0;
}