Cod sursa(job #912365)
| Utilizator | Data | 12 martie 2013 12:53:02 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include <cstdio>
#include <limits.h>
FILE *f=fopen("ssm.in","r");
FILE *g=fopen("ssm.out","w");
int x,sprez,sant,n;
int main()
{
int i;
fscanf(f,"%d",&n);
int start=0,end=0,best=INT_MIN,min=0,begin;
for(i=1;i<=n;i++)
{
fscanf(f,"%d",&x);
sprez=sant+x;
if(sprez-min>best){best=sprez-min;end=i;begin=start+1;}
if(sprez<min){min=sprez;start=i;}
sant=sprez;
}
fprintf(g,"%d %d %d",best,begin,end);
return 0;
}
