Cod sursa(job #1257050)

Utilizator marta_diannaFII Filimon Marta Diana marta_dianna Data 7 noiembrie 2014 10:13:00
Problema Secventa Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream>
#define NMAX 500005

using namespace std;

int p, u, i, a[NMAX], n, d[NMAX], mx=-NMAX, k, pmax;

int main()
{
    ifstream f("secventa.in");
    ofstream g("secventa.out");
    f>>n>>k;
    p=1;
    for (i=1; i<=n; ++i)
    {
      f>>a[i];
      while (a[i]<=a[d[u]] && u>=p) --u;
      d[++u]=i;
      if (mx<a[d[p]] && i>=k)
        {
            mx=a[d[p]];
            pmax=i;
        }
      if (i>=k) while (d[p]<=i-k+1 && p<=u) ++p;
    }
    g<<pmax-k+1<<" "<<pmax<<" "<<mx<<"\n";
    f.close();
    g.close();
    return 0;
}