Pagini recente » Cod sursa (job #2614742) | Cod sursa (job #95671) | Cod sursa (job #2568658) | Cod sursa (job #1840825) | Cod sursa (job #1733594)
#include <cstdio>
#include <algorithm>
#include <deque>
#define MaxN 500001
using namespace std;
int N,K,v[MaxN],Max=-30001,Start;
deque <int> Q;
int main()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&N,&K);
for(int i=1;i<=N;i++)
scanf("%d",&v[i]);
for(int i=1;i<=N;i++)
{
while(!Q.empty()&&v[Q.back()]>v[i])
Q.pop_back();
Q.push_back(i);
if(Q.front()<=i-K)
Q.pop_front();
if(i>=K&&Max<v[Q.front()])
{
Max=v[Q.front()];
Start=i-K+1;
}
}
printf("%d %d %d",Start,Start+K-1,Max);
return 0;
}