Cod sursa(job #79645)

Utilizator maria_pparcalabescu maria daniela maria_p Data 23 august 2007 13:45:27
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <stdio.h>

long a[50000],i,x,poz,y,sc,smax,k,n,nr;
int main(){
	freopen("secv2.in","r",stdin);
	freopen("secv2.out","w",stdout);
	scanf("%ld%ld",&n,&k);
	nr=0;
	for(i=0;i<n;i++){
		scanf("%ld",&a[i]);
		if(a[i]<0)nr++;
	}
	if(nr==n)
		for(i=0;i<n;i++)
			a[i]=-a[i];
	sc=0;smax=0;poz=0;x=0;y=0;
	for(i=0;i<n;i++){
		if (sc<0){
			sc=a[i];
			poz=i;
		}
		else sc+=a[i];
		if (sc>smax && i-poz+1>=k){
			smax=sc;
			x=poz;
			y=i;
		}
	}
	printf("%ld %ld",x+1,y+1);
	if(nr==n)printf(" %ld\n",-smax);
	else printf(" %ld\n",smax);
	fclose(stdin);
	fclose(stdout);
	return 0;
}