Pagini recente » Cod sursa (job #2959806) | Cod sursa (job #2398752) | Cod sursa (job #1639041) | Cod sursa (job #1264254) | Cod sursa (job #2309586)
//#include <stdio.h>
//#include <bits/stdc++.h>
#include <fstream>
using namespace std;
int main()
{
//FILE*fin=fopen("ssm.in","r");
//FILE*fout=fopen("ssm.out","w");
ifstream fin("ssm.in");
ofstream fout("ssm.out");
long n,x,s=-1,i1,i2,maxx,maxi1,maxi2,i;
//fscanf(fin,"%ld",&n);
//fscanf(fin,"%ld",&x);
fin>>n;
fin>>x;
maxx=x;
maxi1=1;
maxi2=1; //daca e primul element, trebuie initializat maximul cu acel element
s=x;
i1=1;
i2=1;
for (i=1; i<n; i++)
{
//fscanf(fin,"%ld",&x);
fin>>x;
if (s<0)
{
s=x;
i1=i+1;
i2=i+1;
}
else
{
s+=x;
i2=i+1;
}
if (maxx<s)
{
maxx=s;
maxi1=i1;
maxi2=i2;
}
}
//fprintf(fout,"%ld %ld %ld",maxx,maxi1,maxi2);
fout<<maxx<<" "<<maxi1<<" "<<maxi2;
fin.close();
fout.close();
return 0;
}