Cod sursa(job #2537985)

Utilizator Florinos123Gaina Florin Florinos123 Data 4 februarie 2020 10:47:10
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>
#include <deque>

using namespace std;

ifstream f ("secventa.in");
ofstream g ("secventa.out");

int n, k, v[500001], aux, maxim, st, dr, i;
deque < int > coada;

int main()
{
 f >> n >> k;
  for (i=1; i<=n; i++)
     f >> v[i];

    for (i=1; i<=n; i++)
    {
        aux = v[i];
         while (!coada.empty() && aux <= v[coada.back()])
          coada.pop_back();
         coada.push_back(i);
      if (coada.front() == i-k)
          coada.pop_front();
      if (i >= k)
      {
         if (v[coada.front()] > maxim)
         {
             maxim = v[coada.front()];
             st = i-k+1;
             dr = i;
         }
      }
    }
 g << st << " " << dr << " " << maxim;
    return 0;
}