Cod sursa(job #199245)

Utilizator ConsstantinTabacu Raul Consstantin Data 17 iulie 2008 18:30:32
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<fstream.h>
#define inf 32100
int a[500000],i,j,k,max,n,st,dr;
void separ(int p,int q)
	{int min=inf,i,poz;
	for(i=p;i<=q;i++)
		if(a[i]<min)
			{min=a[i];
			poz=i;
			}
		if(min>max)
			{max=min;
			st=p;dr=q;}
		if((poz-p)>=k)
			separ(p,poz-1);
		if((q-poz)>=k)
			separ(poz+1,q);
	}
int main(){
ifstream f("secventa.in");
f>>n>>k;
for(i=1;i<=n;i++)
	f>>a[i];
f.close();
separ(1,n);
ofstream g("secventa.out");
g<<st<<" "<<dr<<" "<<max;
g.close();
return 0;
}