Cod sursa(job #669317)

Utilizator okros_alexandruOkros Alexandru okros_alexandru Data 26 ianuarie 2012 19:13:24
Problema Secventa Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <fstream>
#include <queue>
#define NMAx 500100
using namespace std;
deque <int> D;
int n,k,v[NMAx],sol=-100000;

int main() {
	int i,end;
	ifstream in("secventa.in");
	ofstream out("secventa.out");
	in>>n>>k;
	for(i=1;i<=n;i++) {
		in>>v[i];
		while(!D.empty()&&v[i]<=v[D.back()])
			D.pop_back();
		D.push_back(i);
		if(D.front()==i-k)
			D.pop_front();
		if(i>=k&&sol<v[D.front()]) {
			sol=v[D.front()];
			end=i;
			}
		}
	out<<end-k+1<<" "<<end<<" "<<sol<<'\n';
	in.close();
	out.close();
	return 0;
}