Cod sursa(job #2281313)

Utilizator danielsociuSociu Daniel danielsociu Data 11 noiembrie 2018 22:08:21
Problema Secventa Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
#include <deque>
std::ifstream cin("secventa.in");
std::ofstream cout("secventa.out");
#define maxn 500005
int v[maxn],n,k;
std::deque<int> dequ;

int main()
{
    int ind,sol=-55555,i;
    cin>>n>>k;
    for(i=1;i<=n;i++){
        cin>>v[i];
        while(!dequ.empty()&&v[i]<v[dequ.back()])
            dequ.pop_back();
        dequ.push_back(i);
        if(i-k==dequ.front())
            dequ.pop_front();
        if(i>=k&&sol<v[dequ.front()])
            sol=v[dequ.front()],ind=dequ.back();
    }
    cout<<ind-k+1<<' '<<ind<<' '<<sol;
    return 0;
}