Cod sursa(job #597983)

Utilizator maritimCristian Lambru maritim Data 24 iunie 2011 12:08:24
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>

#define MaxN 50100
#define INF 101231230

int A[MaxN];
int N;
int MAX = -INF;
int MIN = 0;
int P1 = 1;
int P2;
int K;

int main()
{
	FILE *f = fopen("secv2.in","r");
	FILE *g = fopen("secv2.out","w");
	
	fscanf(f,"%d %d",&N,&K);
	for(int i=1;i<=N;i++)
		fscanf(f,"%d ",&A[i]);
	for(int i=2;i<=N;i++)
		A[i] += A[i-1];
	for(int i=0;i<=N-K;i++)
	{
		if(A[i] < MIN)
		{
			MIN = A[i];
			P1 = i+1;
		}
		if(MAX < A[i+K]-MIN)
		{
			MAX = A[i+K] - MIN;
			P2 = i + K;
		}
	}
	fprintf(g,"%d %d %d",P1,P2,MAX);
	
	fclose(g);
	fclose(f);
}