Cod sursa(job #315699)

Utilizator Anamaria20Cotirlea Anamaria Anamaria20 Data 16 mai 2009 21:12:06
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <stdio.h>

FILE *f,*s;

int v[500005];
long int n,k,i,j,nr1,nr2,in;

long int min( long int a, long int b)
{
	int q=-40000;
	for(j=a;j<=b;++j)
	{	
		if(v[j]<q)
			q=v[j];
	}

	return q;	
}	

int main()
{
	f=fopen("secventa.in","r");
	s=fopen("secventa.out","w");
	
	fscanf(f,"%ld %ld\n",&n,&k);
	
	for(i=1;i<=n;i++)
		fscanf(f,"%d ",&v[i]);
	
	nr1=min(1,k);
	nr2=nr1;
	
	in=1;
	
	n=n-k-1;
	
	for(i=2;i<=n;++i)
	{
		if(v[i-1]==nr1)
		{
			nr1=min(i,i+k-1);
			
			if(nr2<nr1)
			{	
				nr2=nr1;
				in=i;
			}	
		}	
		else
		{
			if(v[i+k-1]<nr1)
			{
				nr1=v[i+k-1];
				
				if(nr1>nr2)
				{
					nr2=nr1;
					in=i+k-1;
				}	
			}	
		}	
	}	
	
	fprintf(s,"%ld %ld %ld",in,in+k-1,nr2);
	
	fclose(s);
	
	return 0;
}