Cod sursa(job #3335402)

Utilizator tileadavidtileadavid tileadavid Data 22 ianuarie 2026 16:55:11
Problema Carnati Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream cin ("carnati.in");
ofstream cout ("carnati.out");

struct pepene{
    int t, p;
}v[2005];

int n, salariu;
/// saracu vanzator e platit minimum wage ):

bool cmp (pepene a, pepene b){
    return a.t < b.t;
}

int main()
{
    cin >> n >> salariu;
    for (int i = 1; i <= n; ++i){
        cin >> v[i].t >> v[i].p;
    }
    sort (v + 1, v + n + 1, cmp);
    v[0].t = v[1].t;

    int smax = -1, s;
    for (int i = 1; i <= n; ++i){
        s = 0;
        for (int j = 1; j <= n; ++i){
            s = s - (v[j].t - v[j - 1].t) * salariu;
            if (s < 0) s = 0;
            else if (v[j].p <= v[i].p)
                s = s + v[i].p;
            smax = max (smax, s);
        }
    }

    cout << smax;

    return 0;
}