Cod sursa(job #2490958)

Utilizator ruxiTTutunaru Ruxandra ruxiT Data 11 noiembrie 2019 15:31:56
Problema Branza Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <iostream>
#include <fstream>
const int N = 100000;

int dq[N];
int p[N];
int pret[N];

using namespace std;

ifstream fin("branza.in");
ofstream fout("branza.out");

int main()
{
    long long n, s, t, c, i, st = 0, dr = -1, sum = 0;
    fin >> n >> s >> t;
    for (i = 0; i < n; i++)
    {
        fin >> p[i] >> c;
        if (dq[st] == i - t)
            st++;
        while (st <= dr && p[i] <= p[dq[dr]] + (i - dq[dr]) * s)
            dr--;
        dq[++dr] = i;
        sum += p[dq[st]] * c + s * (i - dq[st]) * c;
    }
    fout << sum;
    return 0;
}