Pagini recente » Cod sursa (job #3270053) | Cod sursa (job #3166117) | Cod sursa (job #463805) | Cod sursa (job #2608775) | Cod sursa (job #155568)
Cod sursa(job #155568)
#include<stdio.h>
#define nmax 500000
int v[nmax],w[nmax];
int main()
{
int rez,i,n,k,val,min,s,in,sf;
min=-nmax; in=0;
freopen("secventa.in", "r",stdin);
freopen("secventa.out", "w",stdout);
scanf("%d %d",&n,&k);
sf=-1;
for(i=1;i<=n;++i)
{
scanf("%d", &val);
while(in<=sf && w[in]<=i-k)
++in;
while(in<=sf && v[sf]>val)
--sf; ++sf;
v[sf]=val; w[sf]=i;
if(i>=k && v[in]>min)
{min=v[in]; s=i;}
}
rez=s-k+1;
printf("%d %d %d\n",rez,s,min);
return 0;
}