Cod sursa(job #727375)

Utilizator galbeniGal Beni galbeni Data 27 martie 2012 21:57:43
Problema Secventa Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <stdio.h>

int N,K,V[500000],kezd,veg,Max=-30001;

void Olvas()
{	FILE *f=fopen("secventa.in","r");
	fscanf(f,"%d %d",&N,&K);
	for (int i=0;i<N;++i)
		fscanf(f,"%d",&V[i]);
	fclose(f);
}

int Min(int i,int j)
{	int min=30001;
	for (;i<=j;++i)
		if (V[i]<min)
			min=V[i];
	return min;
}

void Szamol()
{	for (int i=0;i<=N-K;++i)
	{	int min=Min(i,i+K-1);
		if (min>Max)
		{	Max=min;
			kezd=i+1;
			veg=i+K;
		}
	}
}

void Ir()
{	FILE *f=fopen("secventa.out","w");
	fprintf(f,"%d %d %d",kezd,veg,Max);
	fclose(f);
}

int main()
{	Olvas();
	Szamol();
	Ir();
}