Cod sursa(job #11144)

Utilizator raresjuniorSfirlogea Rares raresjunior Data 30 ianuarie 2007 18:13:27
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <stdio.h>
long s[50001];
int a[50001];
long i,k,n,p=0,max=0,pr,ul,t=1;
int main()
{
FILE *f=fopen("secv2.in","r"), *g=fopen("secv2.out","w");
fscanf(f,"%ld %ld",&n,&k);
for (i=1;i<=n;i++)
	{
		fscanf(f,"%d",&a[i]);
		s[i]=s[i-1]+a[i];
	}
ul=k;max=s[k];pr=1;
for (i=1;i<=n-k;i++)
	{
		if (p+a[i]>0) p+=a[i];
			else {p=0;t=i+1;}
		if (max<p+s[i+k]-s[i]) 
			{
			max=p+s[i+k]-s[i];
			pr=t;ul=i+k;
			} 
	}
fprintf(g,"%ld %ld %ld",pr,ul,max);
fclose(f);
fclose(g);
return 0;
}