Cod sursa(job #2729244)

Utilizator realmeabefirhuja petru realmeabefir Data 24 martie 2021 15:01:06
Problema Branza Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>
#include <fstream>
#include <deque>

using namespace std;

ifstream f ("branza.in");
ofstream g ("branza.out");

int main()
{
    int n, s, t;
    f >> n >> s >> t;
    int p, c;

    deque<pair<pair<int,int>,int>> dq;

    long long int total=0;

    for (int i = 1; i <= n; i++){
        f >> p >> c;
        while (dq.size() && dq.back().first.first + (i-dq.back().second) *s > p)
            dq.pop_back();
        while (dq.size() && i-dq.front().second > t)
            dq.pop_front();

        dq.push_back({{p,c},i});
        total += dq.front().first.first*c + c*(i-dq.front().second)*s;

    }

    g << total;

    return 0;
}