Cod sursa(job #219244)

Utilizator ZillaMathe Bogdan Zilla Data 6 noiembrie 2008 08:49:26
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include <stdio.h>


int q[100], st=1, dr, v[100], poz[100], max=-1000,n,k;

int main()
{
	freopen("secventa.in","r",stdin);
	scanf("%d%d", &n, &k);
	for	(int i=1;i<=n;++i)
		scanf("%d", &v[i]);
	for (i=1;i<=n;++i)
	{
		while (st<=dr && v[i] < q[dr]) --dr;
		while (st<=dr && poz[st] < i-k+1) ++st;
		q[++dr]=v[i];
		poz[dr]=i;
	//	for (int j=st;j<=dr;++j) printf("%d ", q[j]);printf("\n");
		if (q[st] > max) max = q[st];
	}
    printf("%d\n", max);



	return 0;
}