Cod sursa(job #3127425)

Utilizator Catalin12Cata Caraulasu Catalin12 Data 7 mai 2023 15:24:39
Problema Branza Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>
#include <iostream>
using namespace std;
ifstream f ("branza.in");
ofstream g ("branza.out");
int c[1000001],p[1000001];
int dr,cost;
int main()
{

    int N,S,T;
    f>>N>>S>>T;
    ++T;
    int m,st=1;
    for (int i=1;i<=N;++i)
    {
        f >>p[i]>>m;
        if (st <=dr && c[st]==i-T)
            st++;
        while (st<=dr && p[i]<=p[c[dr]]+S*(i-c[dr]))
            dr--;
        c[++dr]=i;
        cost+= m*(p[c[st]]+S*(i-c[st]));
    }
    g<<cost;
    return 0;
}