Cod sursa(job #2213080)

Utilizator lucaperjuLuca Perju Verzotti lucaperju Data 15 iunie 2018 16:51:55
Problema Branza Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>

using namespace std;
ifstream in ("branza.in");
ofstream out ("branza.out");
int d[100003],v[100003];
int main()
{
    int n,s,t,i,st=0,dr=-1,sm=0,p;
    in>>n>>s>>t;
    for(i=1;i<=n;++i)
    {
        in>>v[i]>>p;
        if(d[st]==i-t)
            ++st;
        while(st<=dr && v[i]<=v[d[dr]]+(i-d[dr])*s)
            --dr;
        d[++dr]=i;
        sm+=p*(v[d[st]]+(i-d[st])*s);
    }
    out<<sm;
    return 0;
}
/*
                                                                                                                                                                                                                                          not Andreescu xD
*/