Cod sursa(job #3366066)

Utilizator Maya_PopaPopa Maya Diana Maya_Popa Data 28 septembrie 2026 21:21:13
Problema Secventa Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <fstream>
#include <deque>
#define MAX 500000

using namespace std;
ifstream fin ("secventa.in");
ofstream fout ("secventa.out");
int v[MAX];
int main() {
    int n,k,i,maxim,st,dr;
    fin>>n>>k;
    for (i=0; i<n; i++) {
        fin>>v[i];
    }
    deque<int> dq;
    maxim=-MAX;
    st=0;
    dr=k-1;
    for (i=0; i<n; i++) {
        while(!dq.empty() && v[dq.back()]>=v[i]) {
            dq.pop_back();
        }
        dq.push_back(i);
        if (dq.front()<=i-k) {
            dq.pop_front();
        }
        if (i>k) {
            if (v[dq.front()]>maxim) {
                maxim=v[dq.front()];
                st=i-k+1;
                dr=i;
            }
        }
    }
    fout<<st+1<<" "<<dr+1<<" "<<maxim<<endl;
    return 0;
}