Pagini recente » Cod sursa (job #858523) | Cod sursa (job #2098619) | Cod sursa (job #1282669) | Cod sursa (job #381266) | Cod sursa (job #2318263)
#include <bits/stdc++.h>
using namespace std;
ifstream in("carnati.in");
ofstream out("carnati.out");
struct om
{
int t;
int p;
};
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;
}
//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;
}