Cod sursa(job #1685325)

Utilizator Bodo171Bogdan Pop Bodo171 Data 11 aprilie 2016 16:53:08
Problema Secventa Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <iostream>
#include<string>
#include<fstream>
using namespace std;
string s;
int i,semn,j,n,numar,deq[500005],poz[500005],mx,p,u,k,pozkey;
int main()
{
    ifstream f("secventa.in");
    ofstream g("secventa.out");
    f>>n>>k;
    f.get();
    semn=1;
    mx=-(1<<30);
    p=1;
    u=0;
    getline(f,s);
    while(i<=n)
    {
        if(s[j]>='0'&&s[j]<='9')
        {
            numar=numar*10+s[j]-'0';
        }
        else if(s[j]=='-')
        {
            semn=-1;
        }
        else
        {
            i++;
            numar*=semn;

            if(i-poz[p]>=k) p++;
            while(numar<=deq[u]&&p<=u)
            {
                u--;
            }
            u++;
            deq[u]=numar;
            poz[u]=i;
            if(i>=k &&deq[p]>mx) {mx=deq[p];pozkey=i;}
            semn=1;
            numar=0;
        }
        j++;

    }
    g<<pozkey-k+1<<' '<<pozkey<<' '<<mx;
    return 0;
}