Pagini recente » Cod sursa (job #1147473) | Cod sursa (job #1943877) | Cod sursa (job #3157606) | Cod sursa (job #1202360) | Cod sursa (job #290257)
Cod sursa(job #290257)
#include <stdio.h>
#define max 500001
int a[max],deque[max],n,k,front,back,i,j,min=-300100,begin,end;
int main()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d %d",&n,&k);
for(i=1; i<=n; i++) scanf("%d",&a[i]);
front=1; back=0;
for(i=1; i<=n; i++)
{
while(front<=back && a[i]<=a[deque[back]]) back--;
deque[++back]=i;
if(deque[front]==i-k) front++;
if(i>=k)
if(min<a[deque[front]]) min=a[deque[front]],begin=i-k+1,end=i;
}
printf("%d %d %d",begin,end,min);
return 0;
}