Pagini recente » Autentificare | Cod sursa (job #2060880) | Istoria paginii runda/wellcodesimulare4martie-special | Cod sursa (job #1242272) | Cod sursa (job #448950)
Cod sursa(job #448950)
# include <fstream>
# include <iostream>
# define DIM 500003
using namespace std;
int n, v[DIM], pst, pdr, sol=-DIM, k;
void read ()
{
ifstream fin ("secventa.in");
fin>>n>>k;
for (int i=1;i<=n;i++)
fin>>v[i];
}
void solve ()
{
int dq[DIM], st, dr;
st=dr=1;
dq[st]=1;
for(int i=2;i<k;++i)
{
while(v[dq[dr]]>=v[i] && dr>=st)--dr;
dq[++dr]=i;
}
for(int i=k;i<=n;++i)
{
while (v[dq[dr]]>=v[i] && dr>=st)--dr;
dq[++dr]=i;
if (v[dq[st]]>sol)
sol=v[dq[st]], pst=i-k+1, pdr=i;
if (dq[st]<i-k+2)
++st;
}
}
int main ()
{
read ();
solve ();
ofstream fout ("secventa.out");
fout<<pst<<" "<<pdr<<" "<<sol;
return 0;
}