Cod sursa(job #90460)

Utilizator znakeuJurba Andrei znakeu Data 9 octombrie 2007 14:42:54
Problema Secventa Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <stdio.h>


int main()
{
	int n,k,i,j,max=-30005,v[500001],min,s=0;
	
	FILE *in=fopen("secventa.in","r");
	fscanf(in,"%d%d",&n,&k);
	for (i=0; i<n; i++)
		fscanf(in,"%d",&v[i]);
	fclose(in);
	
	for (i=0; i<n-k+1; i++)
	{
		min=i;
		for (j=i; j<i+k; j++)
			if (v[j]<v[min])
				min=j;
		if (v[min]==max)
		{
			if (v[i]<v[s])
				s=i;
			else
				if (v[i+k-1]<=v[s+k-1])
					s=i;
		}
		if (v[min]>max)
		{
			s=i;
			max=v[min];			
		}
	}
	
	FILE *out=fopen("secventa.out","w");
	fprintf(out,"%d %d %d\n",s+1,s+k,max);
	fclose(out);	
	return 0;
}