Cod sursa(job #564265)
Utilizator | Data | 26 martie 2011 23:57:13 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <stdio.h>
using namespace std;
int n,nr,i,rez;
int in,s,incc,sff;
FILE *f,*g;
int main()
{
f=fopen("ssm.in","r");
g=fopen("ssm.out","w");
fscanf(f,"%d",&n);
rez=-1<<30;
s=0;
for (i=1;i<=n;++i)
{
fscanf(f,"%d",&nr);
if (s<0)
{
s=nr;
in=i;
}
else
s+=nr;
if (s>rez)
{
rez=s;
incc=in;
sff=i;
}
}
fprintf(g,"%d %d %d",rez,incc,sff);
fclose(f);
fclose(g);
return 0;
}