Cod sursa(job #555357)

Utilizator NXJokerniculae alexandru NXJoker Data 15 martie 2011 14:07:54
Problema Secventa Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
# include <fstream.h>
#include<iostream.h>
long n, k, v[500005], deq[500005], i, st, dr, sol = -2000000, p1, p2;
int main (){
fstream f ("secventa.in", ios::in);
fstream g ("secventa.out",ios::out);
f>>n>> k;
for (i=1;i<=n;++i)
	{f >> v[i];}
for (i = 1, st = 1; i <= n; ++i)
	{for (; st <= dr && v[deq[dr]] >= v[i]; --dr);
	deq[++dr] = i;
	if (deq[st] == i - k) ++st;
	if (sol < v[deq[st]] && i >= k){
	sol = v[deq[st]];
	p1 = i - k + 1;
	p2 = i;
	}
	}
g << p1 << ' ' << p2 << ' ' << sol << '\n';
return 0;
}