Pagini recente » Cod sursa (job #3316150) | Cod sursa (job #3310216) | Cod sursa (job #3330783) | Cod sursa (job #3354013) | Cod sursa (job #3320879)
#include <bits/stdc++.h>
using namespace std;
ifstream f ("secventa.in");
ofstream g ("secventa.out");
const int NMAX=5e5;
int n, k, v[NMAX+5], mx=-1e9, poz=0;
deque <int> coada;
int main ()
{
f >> n >> k;
for (int i=1;i<=n;i++)
f >> v[i];
for (int i=1;i<=n;i++)
{
while (!coada.empty() && coada.front()<=i-k)
coada.pop_front ();
if (!coada.empty() && v[coada.front()]>mx)
poz=i, mx=v[coada.front()];
while (!coada.empty() && v[coada.back()]>=v[i])
coada.pop_back ();
coada.push_back (i);
}
g << poz-k+1 << " " << poz << " " << mx << "\n";
return 0;
}