Cod sursa(job #2724668)

Utilizator Radu_FilipescuFilipescu Radu Radu_Filipescu Data 17 martie 2021 17:06:02
Problema Branza Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <bits/stdc++.h>

using namespace std;

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

int N, S, T;
deque <pair<int, int> > Q;
long long cost;

int main()
{
    fin >> N >> S >> T;

    int p, demand;
    for( int i = 1; i <= N; ++i ) {
        fin >> p >> demand;

        while( !Q.empty() && p < Q.back().first + S * ( i - Q.back().second ) )
            Q.pop_back();
        Q.push_back( { p, i } );

        cost += demand * ( Q.front().first + S * ( i - Q.front().second ) );
    }

    fout << cost << '\n';
    return 0;
}