Cod sursa(job #2200169)

Utilizator AndreiDeltaBalanici Andrei Daniel AndreiDelta Data 30 aprilie 2018 15:53:49
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream f("secventa.in");
ofstream g("secventa.out");
deque < long > Minim;
long N,K,Element,ID[500000],baza,in;

int main()
{
    f>>N>>K;
    for(int i=1;i<=N;i++)
    {
        f>>Element; ID[i]=Element;
        if(i>K)
        {
            if(Minim.front()>baza) { baza=Minim.front(); in=i-K;   }
            if(ID[i-K]==Minim.front()) Minim.pop_front();
        }
        while(!Minim.empty()&&Element>Minim.back()) Minim.pop_back();
        Minim.push_back(Element);
    }g<<in<<" "<<in+K-1<<" "<<baza;
    return 0;
}