Nu aveti permisiuni pentru a descarca fisierul grader_test48.in
Cod sursa(job #355482)
Utilizator | Eugenie Daniel Posdarascu eudanip | Data | 11 octombrie 2009 12:13:24 |
---|---|---|---|
Problema | Secventa | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
#include<stdio.h>
long j,i,x[500001],t,in,sf,sec,k,n,poz;
int a[500001],v[500001],max=-30001;
int main ()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%ld%ld",&n,&k);
in=1;
sf=0;
sec=0;
for(i=1;i<=n;i++)
{
scanf("%d",&a[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=a[x[i]];
}
}
}
printf("%d %d %d",poz-k+1,poz,k);
return 0;
}