Pagini recente » Cod sursa (job #50457) | Cod sursa (job #613556) | Cod sursa (job #1020773) | Cod sursa (job #1564657) | Cod sursa (job #2396697)
#include <bits/stdc++.h>
using namespace std;
ifstream in ("secventa.in");
ofstream out ("secventa.out");
int v[500001];
int main()
{
deque<int> d;
int n,k,max1=-1,poz1,poz2,maxin;
in>>n>>k;
for (int i=1;i<=n;++i)
in>>v[i];
d.push_back(1);
for (int i=2;i<=n;++i)
{
int p=v[i];
while (d.empty()==0 && v[d.back()]>p)
d.pop_back();
d.push_back(i);
if (i-k>=d.front())
d.pop_front();
if (i>k)
{
maxin=max1;
max1=max(max1,v[(d.front())]);
if (max1>maxin)
{
poz1=i;
poz2=i-d.size();
}
}
}
out<<poz2<<' '<<poz1<<' '<<max1;
return 0;
}