Cod sursa(job #2500023)

Utilizator mjmilan11Mujdar Milan mjmilan11 Data 27 noiembrie 2019 09:58:13
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("branza.in");
ofstream fout("branza.out");

const int NMAX = 100005;
long long a[NMAX],dq[NMAX];

int main()
{
    long long n,s,t,st=1,dr=0,sum=0,k,c;
    fin >> n >> s >> t;
    for(int i=1;i<=n;i++)
    {
        fin >> a[i] >> c;
        while(st<=dr and a[i]<=a[dq[dr]]+(i-dq[dr])*s) dr--;
        dq[++dr]=i;
        if(dq[st]+t<i) st++;
        sum+=a[dq[st]]*c+s*(i-dq[st])*c;
    }
    fout << sum;
    return 0;
}