Cod sursa(job #2888322)

Utilizator SteanfaDiaconu Stefan Steanfa Data 10 aprilie 2022 22:41:05
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb

#include <fstream>
#include <deque>
using namespace std;

long long k, t, s, n, d = 0, price, cat = 0;
deque<pair<long long, long long>> v;
int main()
{
    ofstream cout("branza.out");
    ifstream cin("branza.in");

    cin >> n >> s >> t;
    for (long long i = 0; i < n; i++)
    {
        cin >> price >> cat;
        while (!v.empty() and price <= s * (i - v.front().second) + v.front().first)
        {
            v.pop_front();
        }
        v.push_front({price, i});
        if (!v.empty() and v.back().second < i - t)
        {
            v.pop_back();
        }
        d += v.back().first * cat + s * cat * (i - v.back().second);
    }
    cout << d ;

    return 0;
}