Pagini recente » Cod sursa (job #1162111) | Cod sursa (job #619966) | Cod sursa (job #1596106) | Cod sursa (job #824197) | Cod sursa (job #561654)
Cod sursa(job #561654)
#include<stdio.h>
#include<fstream>
#include<limits.h>
using namespace std;
#define minf INT_MIN
int deq[500002];
int v[500002];
int main()
{
long long s=0;
int n,k,i,lf,rt,min,max;
freopen("secventa.in","r",stdin);
freopen("secventa.out","w",stdout);
scanf("%d%d",&n,&k);
rt=0;
lf=1;
v[0]=minf;
s=minf;
for(i=1;i<=n;++i)
{
scanf("%d",&v[i]);
while(lf<=rt&&v[deq[rt]]>v[i])
--rt;
deq[++rt]=i;
if(deq[lf]==i-k)
++lf;
if(i>=k&&v[deq[lf]]>s)
{
s=v[deq[lf]];
min=i+1-k;
max=i;
}
}
printf("%d %d %lld\n",min,max,s);
return 0;
}