Cod sursa(job #368393)

Utilizator Magnuscont cu nume gresit sau fals Magnus Data 24 noiembrie 2009 20:04:07
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.45 kb
#include <stdio.h>

int main()
{
 long v[100001],mn=0,mx,n,k,i,min=0,max=-2000000000;
 freopen("secv2.in","r",stdin);
 freopen("secv2.out","w",stdout);
 scanf("%ld%ld",&n,&k);
 v[0]=0;
 for (i=1;i<n+1;i++)
 {
	scanf("%ld",&v[i]);
	v[i]+=v[i-1];
	if (v[i]<min) {min=v[i];mn=i;}
	if ((v[i]-min>max)&&(i-mn+1>=k)) {max=v[i]-min;mx=i;}
 }
 if (n==k) {printf("1 %ld %ld",n,v[n]);return 0;}
 printf("%ld %ld %ld",mn+1,mx,max);
 return 0;
}