Cod sursa(job #893176)

Utilizator DanutsDanut Rusu Danuts Data 26 februarie 2013 13:37:40
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<stdio.h>
using namespace std;
const int maxn=500001;
int n,k,i,s[maxn],minn,maxx,start,is,iff;
int main (){
	freopen("secv2.in","r",stdin);
	freopen("secv2.out","w",stdout);
	scanf("%d %d",&n,&k);
	for(i=1;i<=n;i++){
		scanf("%d ",&s[i]);
		s[i]+=s[i-1];
	}
	minn=(1<<31)-1;
	maxx=(-(1<<31))-1;
	for(i=k;i<=n;i++){
		if(s[i-k]<minn){
			minn=s[i-k];
			start=i-k+1;}
		if(s[i]-minn>maxx){
			maxx=s[i]-minn;
			is=start;
			iff=i;}
	}
	printf("%d %d %d",is,iff,maxx);
	return 0;
}