Cod sursa(job #2449693)

Utilizator ezioconnorVlad - Gabriel Iftimescu ezioconnor Data 20 august 2019 14:44:18
Problema Secventa Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;

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

int n, k, st, dr, rez = INT_MIN;
int v[500001];
deque <pair <int, int>> dq;

int main()
{
    in >> n >> k;
    for (int i = 1; i <= n; ++i)
    {
        in >> v[i];
        while (!dq.empty() && v[i] <= dq.back().first)
            dq.pop_back();
        dq.push_back({v[i], i});
        if (dq.front().second == i - k)
            dq.pop_front();
        if (i >= k && rez < dq.front().first)
        {
            rez = dq.front().first;
            st = i - k + 1;
            dr = i;
        }
    }
    return out << st << " " << dr << " " << rez, 0;
}