Cod sursa(job #2388730)

Utilizator adiaioanaAdia R. adiaioana Data 26 martie 2019 13:06:07
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
#include <deque>
#define N 100100
using namespace std;
ifstream cin("branza.in");
ofstream cout("branza.out");
int n,s,t,c;
long long sum,b[N],ch;
deque <long long> mom;
int main()
{
    cin>>n>>s>>t;
    for(int i=1;i<=n;i++)
    {
        cin>>b[i]>>c;
        while(!mom.empty() && b[mom.back()]+s*(i-mom.back())>=b[i])
              mom.pop_back();
        while(!mom.empty() && mom.front()+t<i)
            mom.pop_front();
        mom.push_back(i);
        ch=mom.front();
        sum=sum+(b[ch]+s*(i-ch))*c;
    }

    cout<<sum<<'\n';
    return 0;
}