Cod sursa(job #316202)

Utilizator Anamaria20Cotirlea Anamaria Anamaria20 Data 18 mai 2009 19:22:55
Problema Secventa Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>

using namespace std;

FILE *f,*s;

int v[500001],n,k,i,j,min1,min2,in;

int minim( int a, int b)
{
	int min=50000;
	for(j=a;j<=b;++j)
	{
		if(v[j]<min)
			min=v[j];
	}	
	
	return min;
}

int main()
{
	ifstream f("secventa.in");  
	ofstream s("secventa.out");
	
	f>>n>>k;
	
	for(i=1;i<=n;i++)
		f>>v[i];
	
	min2=minim(1,k);
	min1=min2;
	in=1;
	
	for(i=2;i<=n-k+1;++i)
	{
		if(v[i-1]==min2)
		{
			min2=minim(i,i+k-1);
			
			if(min2>min1)
			{
				min1=min2;
				in=i;
			}	
		}	
		else if(v[i+k-1]<min2)
		{
			min2=v[i+k-1];
			
			if(min2>min1)
			{
				min1=min2;
				in=i;
			}	
		}	
	}	
	
	s<<in<<" "<<in+k-1<<" "<<min1;
	
	s.close();
	
	return 0;
}