Pagini recente » Cod sursa (job #2578220) | Cod sursa (job #2097224) | Cod sursa (job #1880815) | Cod sursa (job #2721513) | Cod sursa (job #2320249)
#include <bits/stdc++.h>
using namespace std;
ifstream in("carnati.in");
ofstream out("carnati.out");
struct om
{
int t;
int p;
};
bool cmp(om a, om b)
{
return a.t < b.t;
}
om v[2001];
int main()
{
int pr = -999999, n, prmax = -1, c, pret, G;
in>>n>>c;
for(int i = 1; i<=n; i++)
{
in>>v[i].t>>v[i].p;
}
sort(v+1, v+n+1, cmp);
//v[0].t = v[1].t;
for(int j = 1; j<=n; j++)
{
pret = v[j].p;
pr = 0;
for(int i = 1; i<=n; i++)
{
if(v[i].p>=pret)
G = pret;
else
G = 0;
pr = pr + G - (v[i].t - v[i-1].t)*c;
if(pr < G - c)
pr = G - c;
if(pr>prmax)
{
prmax = pr;
}
/*if(pr<0)
{
pr = 0;
}*/
}
}
out<<prmax;
return 0;
}