Pagini recente » Cod sursa (job #1975375) | Cod sursa (job #2838443) | Cod sursa (job #475160) | Cod sursa (job #2723650) | Cod sursa (job #612310)
Cod sursa(job #612310)
#include<cstdio>
using namespace std;
int n,k,i,SOL,beg,V[50010],front,back,deque[50010];
void read(),solve();
int main()
{
read();
solve();
return 0;
}
void read()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)scanf("%d",&V[i]);
}
void solve()
{
front=1;back=0;
for(i=1;i<=n;i++)
{
while(front<=back && V[i]<V[deque[back]])back--;
deque[++back]=i;
if(deque[front]==i-k)front++;
if(i>=k && V[deque[front]]>SOL)
{
SOL=V[deque[front]];
beg=deque[front];
}
}
printf("%d %d %d\n",beg,beg+k-1,SOL);
}