Cod sursa(job #2610327)

Utilizator mihnea.cazan15mihnea cazan mihnea.cazan15 Data 4 mai 2020 18:56:44
Problema Branza Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.5 kb
#include <fstream>

using namespace std;
ifstream cin("branza.in");
ofstream cout("branza.out");
long long v[100001],d[100001];
int main()
{
    long long sum=0,n,s,t,st,dr,i,p;
    cin>>n>>s>>t;
    st=0;
    dr=-1;
    for(i=0;i<n;i++)
    {
        cin>>v[i]>>p;
        if(st<=dr&&d[st]==i-t)
           st++;
        while(st<=dr&&v[i]<=v[d[dr]]+s*(i-d[dr]))
              dr--;
        d[++dr]=i;
        sum+=1LL*p*(v[d[st]]+1LL*s*(i-d[st]));
    }
    cout<<sum;
    return 0;
}