Pagini recente » Cod sursa (job #669855) | Cod sursa (job #549212) | Cod sursa (job #1642108) | Cod sursa (job #346497) | Cod sursa (job #1146900)
#include<fstream>
using namespace std;
#define dim 6000002
struct {int begin; int end; int val;}sum[dim];
int main()
{
ifstream f("ssm.in");
ofstream g("ssm.out");
int n,x,minim,maxim; int i,begin,end;
f>>n; int s=0;
for(i=1;i<=n;i++)
{
f>>x;
s+=x;
sum[i].val=s;
sum[i].begin=1; sum[i].end=i;
}
f.close();
minim=0; maxim=0; int pozmin;
for(i=1;i<=n;i++)
{
if(sum[i].val<minim) {minim=sum[i].val; pozmin=sum[i].end+1;}
if(maxim<sum[i].val-minim) {maxim=sum[i].val-minim; begin=pozmin; end=sum[i].end;}
}
g<<maxim<<' '<<begin<<' '<<end<<'\n';
g.close();
return 0;
}