Pagini recente » Cod sursa (job #147020) | Cod sursa (job #2750069) | Cod sursa (job #1289421) | Cod sursa (job #144961) | Cod sursa (job #130142)
Cod sursa(job #130142)
#include<stdio.h>
#define nmax 510
long int i,j,n,k,val,min=-nmax,s,inceput,sfarsit,v[nmax],w[nmax];
int main()
{
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%ld %ld",&n,&k);
inceput=0;
sfarsit=-1;
for(i=1;i<=n;i++)
{
scanf("%ld",&val);
while(inceput <= sfarsit && w[inceput] <= i-k)
inceput++;
while(inceput <= sfarsit && v[sfarsit] > val)
sfarsit--;
sfarsit++;
v[sfarsit]=val;
w[sfarsit]=i;
if(i >= k && v[inceput]>min){
min=v[inceput];
s=i;
}
}
printf("%ld %ld %ld",s-k+1,s,min);
return 0;
}