Cod sursa(job #2330558)

Utilizator dimi999Dimitriu Andrei dimi999 Data 28 ianuarie 2019 16:34:38
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <bits/stdc++.h>
using namespace std;

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

short int dq[500005];

int main()
{
    short int n,k,i,v[500005],maxi=INT_MIN,pi;
    fin>>n>>k;
    for(i=1;i<=n;i++)
        fin>>v[i];
    short int st=1,dr=0;
   for(i=1;i<=n;i++)
   {
       while(st<=dr&&v[dq[dr]]>=v[i])
        dr--;
       dq[++dr]=i;
       if(dq[st]==i-k)
        st++;
       if(i>=k)
       {
           if(v[dq[st]]>maxi)
                maxi=v[dq[st]],pi=i-k+1;
       }
   }
   fout<<pi<<" "<<pi+k-1<<" "<<maxi;
    return 0;
}