Pagini recente » Cod sursa (job #1267783) | Cod sursa (job #2733797) | Cod sursa (job #2193323) | Cod sursa (job #624437) | Cod sursa (job #522923)
Cod sursa(job #522923)
#include<stdio.h>
#define LMAX 500100
int n,k;
int x[LMAX],q[LMAX];
void read()
{
int i;
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)
scanf("%d",&x[i]);
}
void solve()
{
int p=1,u=0,i,poz,max=poz=-1;
for(i=1;i<=n;i++)
{
while(p<=u && x[i]<=x[q[u]])
u--;
q[++u]=i;
if(q[p]+k==i)
p++;
if(i>=k)
if(x[q[p]]>max)
max=q[p],poz=i;
}
printf("%d %d %d",poz-k+1,poz,max);
}
int main()
{
read();
solve();
return 0;
}