Pagini recente » Cod sursa (job #1592454) | Cod sursa (job #2554404) | Cod sursa (job #1871529) | Cod sursa (job #2909426) | Cod sursa (job #876915)
Cod sursa(job #876915)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("m.in");
int main()
{
int n,k,st[500000],x,i,maxim,poz[100],pr,ul;
fin>>n>>k>>x;
st[1]=x;
poz[1]=1;
pr=ul=1;
for(i=2;i<=k;i++)
{
fin>>x;
while(pr<=ul && st[ul]>x)
ul--;
ul++;
st[ul]=x;
poz[ul]=i;
}
maxim=st[pr];
for(i=k+1;i<=n;i++)
{
fin>>x;
while(pr<=ul && st[ul]>x)
ul--;
ul++;
st[ul]=x;
poz[ul]=i;
if(i-poz[pr]>=k)
pr++;
if(maxim<st[pr])
maxim=st[pr];
}
cout<<poz[pr]<<" "<<poz[ul]<<" "<<maxim;
return 0;
}