Cod sursa(job #3186336)

Utilizator Radu_MocanasuMocanasu Radu Radu_Mocanasu Data 22 decembrie 2023 18:50:05
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("branza.in");
ofstream fout("branza.out");
deque < pair <long long, int> > dq;
int main()
{
    int n,t,s,i,p,c;
    long long sum = 0;
    fin >> n >> s >> t;
    for(i = 1; i <= n; i++){
        fin >> p >> c;
        while(!dq.empty() && dq.front().second < i - t) dq.pop_front();
        while(!dq.empty() && dq.back().first > p - i * s) dq.pop_back();
        dq.push_back({p - i * s, i});
        sum += c * (i * s + dq.front().first);
    }
    fout << sum;
    return 0;
}