Pagini recente » Cod sursa (job #1801598) | Cod sursa (job #41555) | Cod sursa (job #1683830) | Cod sursa (job #732774) | Cod sursa (job #273982)
Cod sursa(job #273982)
#include<stdio.h>
#define MAXN 500005
FILE *f=fopen("secventa.in","r"),
*g=fopen("secventa.out","w");
int deque[MAXN],a[MAXN],p,q,i,j,n,k,max,pf,qf;
int main()
{ fscanf(f,"%d %d",&n,&k);
for(i=1;i<=n;++i) fscanf(f,"%d",&a[i]);
p=1;
q=0;
max=-20000000;
for(i=1;i<=n;++i){ while(p<=q&&a[i]<=a[deque[q]]) --q;
deque[++q]=i;
if(deque[p]==i-k) ++p;
if(i>=k) if(a[deque[p]]>max) max=a[deque[p]],pf=i-k+1,qf=i;
}
fprintf(g,"%d %d %d\n",pf,qf,max);
fclose(f);
fclose(g);
return 0;
}