Pagini recente » Cod sursa (job #3193519) | Cod sursa (job #1137323) | Cod sursa (job #1402823) | Cod sursa (job #1444838) | Cod sursa (job #650449)
Cod sursa(job #650449)
#include<iostream>
#include<fstream>
using namespace std;
short c[500001],v[500001];
int main ()
{
int n,i,k,st,dr,max,sfarsit;
ifstream f("secventa.in");
ofstream g("secventa.out");
f>>n>>k;
for(i=1;i<=n;i++)
f>>v[i];
f.close();
st=1;
dr=0;
max=-100000;
for(i=1;i<=n;i++) {
while((st<=dr)&&(v[c[dr]]>=v[i]))
dr--;
c[++dr]=i;
if(c[st]<=(i-k))
st++;
if((v[c[st]]>max)&&(i>=k)) {
max=v[c[st]];
sfarsit=i;
}
}
g<<sfarsit-k+1<<" "<<sfarsit<<" "<<max;
g.close();
return 0;
}