Pagini recente » Cod sursa (job #2898444) | Cod sursa (job #2249990) | Cod sursa (job #893957) | Cod sursa (job #2919909) | Cod sursa (job #2563354)
#include <fstream>
#include <deque>
using namespace std;
ifstream in ("secventa.in");
ofstream out ("secventa.out");
int n, k;
int v[500137];
int st, fin, mx;
deque < int > q;
int main()
{
in >> n >> k;
for ( register int i = 1 ; i <= n ; ++i )
{
in >> 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 ( i >= k && v[q.front ()] > mx )
{
mx = v[q.front ()];
fin = i;
st = i - k + 1;
}
}
out << st << " " << fin << " " << mx;
return 0;
}