Cod sursa(job #2936921)

Utilizator Radu_BicliBiclineru Radu Radu_Bicli Data 9 noiembrie 2022 17:54:23
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda cnilc1_2-dq Marime 0.75 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("secventa.in");
ofstream fout("secventa.out");
long long n, k, i, m, p, u;
int a[500002];
deque<int> q;

int main() {
    fin >> n >> k;
    for(i = 1; i <= n; i++) fin >> a[i];
    while(k <= n) {
        for(i = 1; i <= n; i++) {
            while(!q.empty() && a[i] <= a[q.back()]) q.pop_back();
            q.push_back(i);
            if(i >= k) {
                while(!q.empty() && i - q.front() >= k) q.pop_front();
                if(m < a[q.front()]) {
                    p = q.front();
                    u = i;
                    m = a[q.front()];
                }
            }
        }
        k++;
    }
    fout << p << " " << u << " " << m;

    return 0;
}