Cod sursa(job #313270)

Utilizator IoannaPandele Ioana Ioanna Data 8 mai 2009 16:57:36
Problema Secventa 2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<stdio.h>
#define max -125000000
long v[50010],min[50010],poz[50010];
long inc,sf;
long smax,n,k;

void read()
{
	scanf("%ld%ld",&n,&k);
	long i,j;
	for (i=1;i<=k+1;i++)
	{
		scanf("%ld",&v[i]);
		v[i]=v[i]+v[i-1];
	}
	j=2;
	for (i=k+2;i<=n;i++)
	{
		scanf("%ld",&v[i]);
		v[i]=v[i]+v[i-1];
		if (v[j]<min[i-1])
		{
			min[i]=v[j];
			poz[i]=j;
		}
		else 
		{
			min[i]=min[i-1];
			poz[i]=poz[i-1];
        }			
		j++;
	}
	
}

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

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