Pagini recente » Cod sursa (job #1977267) | Cod sursa (job #2762614) | Cod sursa (job #1464361) | Cod sursa (job #1549823) | Cod sursa (job #357402)
Cod sursa(job #357402)
#include<stdio.h>
long j,i,x[5001],t,in,sf,sec,k,n,poz,u;
int a[5001],v[5001],max=-2000000000,semn,nr;
char s[5001];
int main ()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%ld%ld\n",&n,&k);
gets(s+1);
semn=1;
for(i=1;s[i];i++)
{
if(s[i]==' ')
{
continue;
a[++u]=nr*semn;
semn=1;
}
if(s[i]=='-')
{
semn=-1;
continue;
}
if(s[i]>='0' && s[i]<='9')
nr=nr*10+(s[i]-'0');
}
in=1;
sf=0;
sec=0;
for(i=1;i<=n;i++)
{
if(i-k+1>x[in])
in++;
t=sf;
if(i>1)
{
while(v[t]>a[i])
{
t--;
if(t<in)
break;
}
}
t++;
sf=t;
v[sf]=a[i];
x[sf]=i;
if(v[in]>max)
{
if(i>=k)
{ max=v[in];
poz=i;
}
}
}
printf("%ld %ld %d",poz-k+1,poz,max);
return 0;
}