Cod sursa(job #2204777)

Utilizator canmihaiCancescu Mihai canmihai Data 16 mai 2018 23:38:29
Problema Secventa Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>
#define m 5000010
int n,k,v[m],d[m],maxim=-5000000,pm;
long long sum;
using namespace std;
int main() {
    ifstream fin("secventa.in");
    ofstream fout("secventa.out");
    fin>>n>>k;
    for(int i=1;i<=n;i++)
        fin>>v[i];
    int cap=1,coada=0;
    for(int i=1;i<=n;i++){
        while(cap<=coada && v[i]<v[d[coada]])
            coada--;
        d[++coada]=i;
        if(d[cap]==i-k)
            cap++;
        if(i>=k)
            if(maxim<v[d[cap]]){
                maxim=v[d[cap]];
                pm=i;
            }


    }

    fout<<pm-k+1<<" "<<pm<<" "<<maxim;




    return 0;
}