Cod sursa(job #2892272)

Utilizator Darius1414Dobre Darius Adrian Darius1414 Data 21 aprilie 2022 15:26:14
Problema Branza Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
deque <int> mydeq;
int n,s,t;
long long v[100002],p[100002],rsp;
int main()
{
    ifstream f ("branza.in");
    ofstream g ("branza.out");
    f>>n>>s>>t;
    for (int i=1; i<=n; i++)
    {
        f>>v[i]>>p[i];
        while (!mydeq.empty() && i-mydeq.front()>t) mydeq.pop_front();
        while (!mydeq.empty() && (i-mydeq.back())*s+v[mydeq.back()]>=v[i]) mydeq.pop_back();
        mydeq.push_back(i);
        rsp=rsp+v[mydeq.front()]*p[i]+p[i]*(i-mydeq.front())*s;
    }
    g<<rsp;
}