Pagini recente » Cod sursa (job #1979346) | Cod sursa (job #2644533) | Cod sursa (job #1606424) | Cod sursa (job #1828274) | Cod sursa (job #1773795)
#include <algorithm>
#include <fstream>
#include <vector>
using namespace std;
int main()
{
ifstream fin("carnati.in");
ofstream fout("carnati.out");
int n, salariu;
fin >> n >> salariu;
vector<pair<int, int>> clienti(n + 1);
for (int i = 1; i <= n; ++i)
fin >> clienti[i].first >> clienti[i].second;
sort(clienti.begin() + 1, clienti.end());
clienti[0].first = -20;
int raspuns = 0;
for (int i = 1; i <= n; ++i) {
int pret = clienti[i].second;
int profit = 0;
for (int j = 1; j <= n; ++j) {
int vanzari = (clienti[j].second >= pret) ? pret : 0;
int ore = clienti[j].first - clienti[j - 1].first;
profit = max(profit + vanzari - salariu * ore, vanzari - salariu);
raspuns = max(raspuns, profit);
}
}
fout << raspuns << "\n";
return 0;
}