Pagini recente » Cod sursa (job #1942063) | Cod sursa (job #96486) | Cod sursa (job #2927773) | Cod sursa (job #480641) | Cod sursa (job #1529204)
#include<iostream>
#include<fstream>
#define D 500000
using namespace std;
fstream fin("secventa.in",ios::in),fout("secventa.out",ios::out);
int n,k;
short x[D+10],a;
int poz[D+10],pi,pf,maxim=-D,p=1,u=1;
int main()
{
int i,r,j;
fin>>n>>k;
fin>>a;
x[p]=a;
poz[p]=1;
for(i=2;i<=n;i++)
{
fin>>a;
while(p<=u&&x[u]>=a) u--;
x[++u]=a;
poz[u]=i;
if(i-poz[p]+1>k) p++;
if(i>=k&&x[p]>maxim)
{
maxim=x[p];
pf=i;
}
}
fout<<pf-k+1<<" "<<pf<<" "<<maxim<<"\n";
return 0;
}