Cod sursa(job #725928)
Utilizator | Bogdan Stoian ILDottore | Data | 26 martie 2012 22:33:03 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 95 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include<cstdio>
using namespace std;
FILE *f=fopen("ssm.in","r");
FILE *g=fopen("ssm.out","w");
long n,sum,best,x,beg,end,bb,be;
int main()
{
fscanf(f,"%ld",&n);
beg=1;
for (long i=1;i<=n;i++)
{ fscanf(f,"%ld",&x);
if (sum>=0)
{sum+=x;
end=i;}
else
{sum=x;
beg=i; end=i;
}
if (sum>best)
{best=sum;
bb=beg;
be=end;
}
}
fprintf(g,"%ld %ld %ld\n",best,bb,be);
return 0;}