Pagini recente » Istoria paginii runda/proba123451/clasament | Istoria paginii runda/caress/clasament | Istoria paginii runda/253913/clasament | Arhiva de probleme | Cod sursa (job #3136456)
#include <fstream>
#include <deque>
using namespace std;
ifstream fin ("secventa.in");
ofstream fout ("secventa.out");
int n,k,i,maxc,dr,st,v[500001];
deque <int> q;
int main ()
{
fin>>n>>k;
maxc=-300001;
for (i=1; i<=n; i++)
{
fin>>v[i];
while (!q.empty ()&&v[i]<v[q.back ()])
q.pop_back ();
q.push_back (i);
if (i-q.front ()+1>k)
q.pop_front ();
if (v[q.front ()]>maxc)
{
maxc=v[q.front ()];
st=i-k+1;
dr=i;
}
}
fout<<st<<" "<<dr<<" "<<maxc;
return 0;
}