Cod sursa(job #313264)

Utilizator IoannaPandele Ioana Ioanna Data 8 mai 2009 16:10:49
Problema Secventa 2 Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include<stdio.h>
long v[50010];
long inc,sf;
long smax,n,k;

void read()
{
	scanf("%ld%ld",&n,&k);
	long i;
	for (i=1;i<=n;i++)
	{
		scanf("%ld",&v[i]);
	}
}

void rez()
{
	long i;
	long st,dr;
	long s=0;
	st=dr=1;
	s=v[1];
	smax=s;
	for (i=2;i<=n;i++)
	{
		if (s+v[i]>0)
		{
			s+=v[i];
			dr++;
			if (dr-st+1>=k)
				if (s>smax)
				{
					smax=s;
					inc=st;
					sf=dr;
				}
		}
		else 
		{
			if (dr-st+1>=k)
				if (s>smax)
				{
					smax=s;
					inc=st;
					sf=dr;
				}
			st=i;
			s=v[i];
			dr=i;
		}			
	}
printf("%ld %ld %ld\n",inc,sf,smax);	
}

int main()
{
	freopen("secv2.in","r",stdin);
	freopen("secv2.out","w",stdout);
	read();
	rez();
	return 0;
}