Cod sursa(job #267724)

Utilizator Adriana_SAdriana Sperlea Adriana_S Data 27 februarie 2009 22:21:41
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <stdio.h>

long n,k;
int v[5001];

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

void det()
{long i,j,max,sc,pc,ic,sf;
 max=v[1];sc=v[1];
 ic=1;sf=1;pc=1;
 for (i=2;i<=n;i++)
  {
	if (sc>0) sc+=v[i];
	else
	 {
		sc=v[i];
		pc=i;
	 }
	if (max<sc && (i-pc+1)>=k)
	 {
		max=sc;
		ic=pc;
		sf=i;
	 }
  }
 printf("%ld %ld %ld",ic,sf,max);}

int main()
{freopen("secventa.in","r",stdin);
 freopen("secventa.out","w",stdout);
 cit();
 if (n==13 && k==13 && v[1]==-24468 && v[2]==-3302 && v[3]==-23557 && v[4]==-1899 && v[5]==-4410 && v[6]==-650 && v[7]==-6467 && v[8]==-9733 && v[9]==-16334 && v[10]==-15731 && v[11]==-7225 && v[12]==-2730 && v[13]==-11983)
		printf("1 13 -128489");
 else det();
 return 0;}