Pagini recente » Cod sursa (job #373066) | Cod sursa (job #1257192) | Cod sursa (job #1185303) | Cod sursa (job #492979) | Cod sursa (job #585059)
Cod sursa(job #585059)
#include <stdio.h>
int q[500001],p[500001];
int main()
{
int l=1,r=0,i=0,ind=0,n=0,k=0,x=0,max=0;
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&n,&k);
for (i=1;i<=k;++i)
{
scanf("%d",&x);
while ((x<q[r])&&(r>0)) --r;
++r;
q[r]=x;
p[r]=i;
}
max=q[1];ind=k;
for (i=k+1;i<=n;++i)
{
scanf("%d",&x);
while ((x<q[r])&&(r>=l)) --r;
++r;
q[r]=x;
p[r]=i;
if (p[l]<=i-k) ++l;
if (q[l]>max) {max=q[l];ind=i;}
}
printf("%d %d %d",ind-k+1,ind,max);
return 0;
}