Cod sursa(job #2732031)

Utilizator andi2000Toader Andi andi2000 Data 28 martie 2021 17:22:50
Problema Branza Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;

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

deque<long long> pret_minim;

int main()
{
    long long n, s, t, min = 0, c, p, k;
    f >> n >> s >>t;
    k = 0;
    for (long long i=0; i<n; i++)
    {
        f >> c >> p;
        while(i-k>t && pret_minim.size()!=0)
        {
            k++;
            pret_minim.pop_front();
        }
        while(1LL*pret_minim.front()+1LL*(i-k)*s > c && pret_minim.size()!=0)
        {
            k++;
            pret_minim.pop_front();
        }
        pret_minim.push_back(c);
        min = min + 1LL*p*(1LL*pret_minim.front()+1LL*(i-k)*s );
        }
   g << min;
}