Cod sursa(job #2938187)

Utilizator rARES_4Popa Rares rARES_4 Data 11 noiembrie 2022 19:20:52
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.85 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream f ("a.in");
ofstream g ("a.out");
deque<int> dq;
int v[500001];
long long n,k,inceput,lmin,baza=-40000;
int main()
{
    f >> n >> k;
    for(int i = 1; i<=n; i++)
    {
        f >> v[i];
        while(!dq.empty() && v[dq.back()]>v[i])
        {
            dq.pop_back();
        }
        if(!dq.empty() && dq.front()==i-k)
            dq.pop_front();
        dq.push_back(i);
        if(i>=k)
        {
                if(v[dq.front()]>baza)
                {
                    baza = v[dq.front()];
                    lmin = i-dq.front();
                    inceput  = dq.front();

                }
                if(v[dq.front()] ==baza)
                    lmin++;
        }
    }
    g << inceput<< " " << inceput+lmin-1<< " "<<baza;

}