Cod sursa(job #2167440)

Utilizator Dobricean_IoanDobricean Ionut Dobricean_Ioan Data 13 martie 2018 21:47:15
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#define x first
#define y second
#include <deque>
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("secventa.in");
ofstream fout ("secventa.out");

const int Dim = 500001;
deque < pair < int , int > > D;
int n,k,ma;

int main() {

    fin >> n >> k;
    int val;
    int st , dr;
    for ( int i = 1;  i <= n; ++i) {
        fin >> val;
        while(!D.empty() and D.back().x > val )
            D.pop_back();
        D.push_back({val,i});
        if(i - D.front().y >= k) D.pop_front();
        if ( i >= k and ma <= D.front().x) {
            st = D.front().y;
            dr = i;
            ma = D.front().x;
            }
    }
    fout << st << " " << dr << " "<<ma;

}