Cod sursa(job #2610339)

Utilizator stefan.ghenescu2005@gmail.comStefan Ghenescu [email protected] Data 4 mai 2020 19:03:50
Problema Branza Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>

using namespace std;
ifstream in("branza.in");
ofstream out("branza.out");
int v[100005], d[100005];

int main()
{
    int n,s,t,st,dr,c;
    long long cost;
    st=0;
    dr=-1;
    cost=0;
    in>>n>>s>>t;
    t++;
    for(int i=0;i<n;i++)
    {
        in>>v[i]>>c;
        if(st<=dr && d[st]==i-t)
        {
            st++;
        }
        while(st<=dr && v[d[dr]]+(i-d[dr])*s>=v[i])
        {
            dr--;
        }
        d[dr++]=i;
        cost+=(long long)(c*(v[d[st]])+(long long)(i-d[st])*s);
    }
    out<<cost;

    return 0;
}