Cod sursa(job #1807826)

Utilizator AdinanaAdi Inf Adinana Data 16 noiembrie 2016 22:37:13
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <fstream>
using namespace std;
int n, k, D[5000004], v[5000004];
long long s;
int main(){
    ifstream fin ("deque.in");
    ofstream fout("deque.out");
    fin>>n>>k;
    for(int i=1;i<=n;i++){
        fin>>v[i];
    }
    int p=1, minim, pozi, pozj;
    int u=1;
    D[1]=1;
    for(int i=2;i<=n;i++){
        while(v[i]<=v[D[u]] && p<=u)
            u--;
        D[++u]=i;
        if(i-D[p]>=k)
            p++;
        if(i>=k && v[D[p]]>minim){
            minim=v[D[p]];
            pozi=i-k+1;
            pozj=i;
        }

    }
     fout<<pozj-k+1<<" "<<pozj<<" "<<minim;
    return 0;
}