Cod sursa(job #519925)

Utilizator alexamiu2008Miu Alexandra alexamiu2008 Data 6 ianuarie 2011 21:54:07
Problema Subsecventa de suma maxima Scor 75
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<stdio.h>
FILE*fin,*fout;
long  int a[6000002],i,j,sb,min,max,n,st,dr,p;
int main(){
fin=fopen("ssm.in","r");
fout=fopen("ssm.out","w");
fscanf(fin,"%ld",&n);
for(i=1;i<=n;i++){
fscanf(fin,"%ld ",&a[i]);
a[i]=a[i]+a[i-1];
}
max=a[1];
min=0;p=0;st=0;
for(i=1;i<=n;i++){
sb=a[i]-min;
if(i==1){sb=a[i];}
if(sb>max){max=sb;st=p+1;dr=i;}

if(a[i]<min){min=a[i];p=i;}
}

fprintf(fout,"%ld %ld %ld",max,st,dr);
return 0;}