Pagini recente » Cod sursa (job #1770072) | Cod sursa (job #898054) | Cod sursa (job #1644343) | Cod sursa (job #1338766) | Cod sursa (job #237528)
Cod sursa(job #237528)
# include <stdio.h>
# define nmax 500001
long N,K,C[nmax];
int a[nmax];
int main(){
long i,st,dr,max=-30001,x=0,y=0,p;
freopen("secventa.in", "r", stdin);
freopen("secventa.out", "w", stdout);
scanf("%ld %ld",&N,&K);
p=1;
for (i=1;i<=N;i++){
scanf("%d ",&a[i]);
if (a[p]>a[i]&& i<K) p=i;
}
st=1; dr=0;
for (i=p;i<=N;i++){
while (st<=dr && a[i]<=a[C[dr]]) dr--;
C[++dr]=i;
if (C[st]==i-K) st++;
if (i>=K && a[C[st]]>max){
max=a[C[st]];
x=i-K+1; y=i;
}
}
printf("%ld %ld %ld",x,y,max);
return 0;
}