Cod sursa(job #3329166)

Utilizator Radu_BicliBiclineru Radu Radu_Bicli Data 11 decembrie 2025 23:24:50
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.98 kb
#include <bits/stdc++.h>

using namespace std;

#define USE_STD_IO 0
//#define if(USE_STD_IO) cout
#if USE_STD_IO
    #define fin cin
    #define fout cout
#else
    ifstream fin("secventa.in");
    ofstream fout("secventa.out");
#endif // USE_STD_IO

int n, k, i, a[500002], rasp, st, dr;
deque<int> q;

int main() {
    if(USE_STD_IO) ios_base::sync_with_stdio(false);
    fin.tie(nullptr);
    fout.tie(nullptr);

    fin >> n >> k;
    for(i = 1; i < k; i++) {
        fin >> a[i];
        while(!q.empty() && a[q.back()] > a[i]) q.pop_back();
        q.push_back(i);
    }
    for(i = k; i <= n; i++) {
        fin >> a[i];
        while(!q.empty() && a[q.back()] > a[i]) q.pop_back();
        q.push_back(i);

        if(i - q.front() + 1 > k) q.pop_front();

        if(rasp < a[q.front()]) {
            rasp = a[q.front()];
            st = q.front();
            dr = i;
        }
    }
    fout << st << " " << dr << " " << rasp;

    return 0;
}