Cod sursa(job #110396)

Utilizator xtephanFodor Stefan xtephan Data 26 noiembrie 2007 18:18:00
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#define nx 1000
#include<stdio.h>


int d[nx], v[nx], bm, l=1, r, n, k;


void cit();
void rezolva();
void afis();


int main() {

	freopen("secventa.in", "r", stdin);
	freopen("secventa.out", "w", stdout);


	cit();
	rezolva();
	afis();


	return 0;
}


void cit() {
	scanf("%d", &n);
	scanf("%d", &k);
}



void rezolva() {

	int i;

	for(i=1; i<=n; i++) {

		scanf("%d", &v[i]);

		while(v[d[r]]>v[i] && r>=l && r>0)
			r--;


	       //	r=(r+1>nx)?r=0:r+1;
		d[++r]=i;

		while(d[l]<i-k+1)
			l++;


		if(v[bm]<v[d[l]])
			bm=d[l];

	}

}

void afis(){
	for(int i=0; i<k; i++)
		printf("%d ", v[i+bm]);
}