Cod sursa(job #1907572)

Utilizator usureluflorianUsurelu Florian-Robert usureluflorian Data 6 martie 2017 19:53:49
Problema Secventa Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
//nu intra pe 2 teste in timp cu deque pt ca face si operatii de eliminare in fata deque.ul
#include <fstream>
using namespace std;
ifstream f ("secventa.in");
ofstream g ("secventa.out");
int n,k,i,d[500001],v[500001],mare,p,u,st,dr;
int main()
{
    f>>n>>k;
    mare=-30001;
    for(i=1;i<=n;++i) f>>v[i];
    p=u=1;
    d[p]=1;
    for(i=2;i<=n;++i)
    {
        while(p<=u&&v[i]<=v[d[u]]) --u;
        ++u;
        d[u]=i;
        while(p<=u&&i-d[p]>=k) ++p;
    if(v[d[p]]>mare&&i>=k) {mare=v[d[p]];dr=i;}
    }
    g<<dr-k+1<<' '<<dr<<" "<<mare;
return 0;}