Cod sursa(job #1392100)

Utilizator crysstyanIacob Paul Cristian crysstyan Data 18 martie 2015 13:10:53
Problema Secventa Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>
#include <deque>

using namespace std;

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

deque <int> d,q;
int v[500001],i,n,pozi,pozf,k,val=-31000;

int main()
{
    f>>n>>k;
    for (i=1; i<=n; ++i)
    {
        f>>v[i];
        while (!d.empty() && v[d.back()]>v[i])
        d.pop_back();
        d.push_back(i);

        if (d.front()<=i-k) d.pop_front();
      /* q=d;
       while (!q.empty())
       {
           g<<q.front()<<" ";
           q.pop_front();
       }
       g<<'\n';*/
       if (v[d.front()]>val && i>k)
        {
            val=v[d.front()];
            pozf=i;
        }
    }
    g<<pozf-k+1<<" "<<pozf<<" "<<val;

    return 0;
}