Cod sursa(job #2649569)

Utilizator alex2209alexPavel Alexandru alex2209alex Data 15 septembrie 2020 10:38:35
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <bits/stdc++.h>

using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
int n,k;
int mi[500001],rasp,rasp2,rasp3;
short mi[500001];
int main() 
{
	f >> n >> k;
	f >> v[1];
	mi[1] = 1;
	int in = 1,sf = 1;
	for(int i = 1; i <= n; ++i)
	{
		f >> v[i];
		while(v[i] < v[mi[sf]] && sf >= in)
			sf--;
		mi[++sf] = i;
		if(mi[in] + k < i)
			in++;
		if(v[mi[in]] > rasp && i >= k)
		{
			rasp = v[mi[in]];
			rasp2 = i - k + 1;
			rasp3 = i;
		}
	}
	g << rasp2 << " " << rasp3 << " " << rasp;
}