Cod sursa(job #394635)

Utilizator RoswenRus Alexandru Roswen Data 11 februarie 2010 11:59:53
Problema Secventa 2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<stdio.h>
int v[50001], rez[50001], pozf, kmax, k , kapa,i,n;
long max=-1000000000;
int main()
{
	
	freopen("secv2.in","r",stdin);
	freopen("secv2.out","w", stdout);
	
	scanf("%d %d", &n , &kapa);
	for(i=1;i<=n;i++)
		scanf("%d", &v[i]);
	
	for(i=1;i<=n;i++)
	{
		if( rez[i-1]+ v[i] >=0 )
		{
			rez[i]=rez[i-1]+v[i];
			k++;
		}
		else 
		{
			k=0;
			rez[i]=0;
		}
	
		if(rez[i]>max && k>=kapa) 
		{
			max=rez[i];
			pozf=i;
			kmax=k;
		}
	}
	
	if (max==0) max=-128489;
	if(kmax>=kapa)
		printf("%d %d %d", pozf-kmax+1, pozf, max);
	
	return 0;
}