Cod sursa(job #3220051)

Utilizator contandrei3Andrei Mihai contandrei3 Data 2 aprilie 2024 09:35:00
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("branza.in");
ofstream fout("branza.out");
deque <int> d;
int n,t,s,c[100005],p[100005],i,j,cmin;
long long cnt;
int main()
{
    fin>>n>>s>>t;
    for (i=1;i<=n;i++)
            fin>>c[i]>>p[i];
    d.push_front(1);
    for (i=1;i<=n;i++)
        {
            while (!d.empty() && c[i]<=((i-d.back())*s+c[d.back()])) d.pop_back();
            d.push_back(i);
            cnt+=(((i-d.front())*(long long)(s))+c[d.front()])*p[i];
            if (i-d.front()==t) d.pop_front();
        }
    fout<<cnt;
    return 0;
}