Pagini recente » Cod sursa (job #2726599) | Cod sursa (job #404221) | Cod sursa (job #14527) | Cod sursa (job #1205676) | Cod sursa (job #1674065)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("carnati.in");
ofstream fout("carnati.out");
int n, c, sol;
pair <int, int> a[2005];
int Rezolva(int x)
{
int sol, s, i;
sol = s = 0;
for(i = 1 ; i <= n ; i++)
{
s = s - c * (a[i].first - a[i - 1].first);
if(s < 0) s = 0;
if(a[i].second >= x)
s = s + x;
sol = max(sol , s - c);
}
return sol;
}
int main()
{
int i;
fin >> n >> c;
for(i = 1; i <= n; i++)
fin >> a[i].first >> a[i].second;
sort(a + 1, a + 1 + n);
for(i = 1; i <= n; i++)
sol = max(sol, Rezolva(a[i].second));
fout << sol << "\n";
fin.close();fout.close();
return 0;
}