Cod sursa(job #2343680)

Utilizator AlexBosneag26Bosneag Alexandru AlexBosneag26 Data 14 februarie 2019 10:41:58
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>

using namespace std;

ifstream in("secventa.in");
ofstream out("secventa.out");

int n,k,ci,mi,maxim=-30001,v[500000],dq[500000];

int main()
{
    in>>n>>k;
    for(int i=1;i<=n;i++)
        in>>v[i];
    int st=0,dr=-1;
    for(int i=1;i<=n;i++)
    {
        if(st<=dr&&dq[st]==i-k)
            st++;
        while(st<=dr&&v[i]<=v[dq[dr]])
            dr--;
        dq[++dr]=i;
        if(v[dq[st]]>maxim)
            maxim=v[dq[st]],mi=dq[st];
    }
    ci=mi;
    int j=1,i;
    for(i=1;i<=n;i++)
    {
        while(j<=i&&v[j]<maxim)
            j++;
    }
    out<<j<<" "<<i-1<<" "<<maxim;
    return 0;
}