Cod sursa(job #217669)

Utilizator lamez0rBogdan Bondor lamez0r Data 29 octombrie 2008 16:32:13
Problema Secventa Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<stdio.h>
long n,k,poz,poz2;
int v[5001],l[5001],max;

void read ()
	{
	FILE *f=fopen("secventa.in","r");
	fscanf(f,"%ld%ld",&n,&k);
	long i;
	for (i=1;i<=n;++i)
		fscanf(f,"%d",&v[i]);
	fclose(f);
	}

void solve ()
	{
	long i,j,min;
	int ok=1;
	for (i=n;i>=k;--i)
		{
		ok=1;
		min=v[i];
		for (j=i-1;ok;--j)
			{
			if (v[j]<min&&j>=i-k+1)
				min=v[j];
			else
				if (v[j]<min)
					{
					ok=0;
					j+=2;
					}
			}
		l[i]=min;
		if (min>max)
			{
			max=min;
			poz=i;
			poz2=j;
			}
		else
			if (min==max&&i<poz)
				{
				max=min;
				poz=i;
				poz2=j;
				}
		}
	}

void write ()
	{
	FILE *f=fopen("secventa.out","w");
	fprintf(f,"%ld %ld %d",poz2,poz,max);
	fclose(f);
	}

int main ()
{
read();
v[0]=-2000000000;
solve ();
write ();
return 0;
}