Cod sursa(job #3220053)

Utilizator Iulya10Toader Iulia Iulya10 Data 2 aprilie 2024 09:39:06
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("branza.in");
ofstream fout("branza.out");
int d[100005],v[100005],i,n,s,t,pr,c,p,u;
long long sol;
int main()
{
    fin>>n>>s>>t;
    d[1]=1;
    u=p=1;
    for(i=1;i<=n;i++)
    {
        fin>>c>>pr;
        v[i]=c;
        while(p<=u&&c<=v[d[u]]+s*(i-d[u])) u--;
        d[++u]=i;
        sol+=(v[d[p]]+(long long)s*(i-d[p]))*pr;
        if(i-d[p]==t) p++;
    }
    fout<<sol;
    return 0;
}