Pagini recente » Cod sursa (job #651437) | Cod sursa (job #901531) | Rating Costel Puicula (mazgozaur) | Cod sursa (job #1857486) | Cod sursa (job #1401525)
#include <fstream>
#include <algorithm>
#include <cmath>
#include <iomanip>
#include<cstring>
using namespace std;
ifstream cin("carnati.in");
ofstream cout("carnati.out");
struct tab{
int t, p;
}a[2005];
int n, c, i, j, m, k, x, y, s, MX, D[2005], act;
bool cmp( const tab &x, const tab &y)
{
return x.t < y.t;
}
int main()
{
cin>>n>>c;
for(i=1; i<=n; ++i) cin>>a[i].t>>a[i].p;
sort(a+1, a+n+1, cmp);
a[0].t=a[1].t-1;
MX=-1;
for(i=1; i<=n; ++i)
{
act=a[i].p;
s=0;
for(j=1; j<=n; ++j)
{
if (act<=a[j].p)
D[j]=max(D[j-1] - (a[j].t-a[j-1].t)*c + act, act-c);
else
D[j]=D[j-1] - (a[j].t-a[j-1].t)*c;
MX=max(D[j], MX);
}
}
cout<<MX;
return 0;
}