Pagini recente » Cod sursa (job #977591) | Cod sursa (job #306745) | Cod sursa (job #646350) | Cod sursa (job #2925331) | Cod sursa (job #2458668)
#include <iostream>
#include <fstream>
#include <cstring>
#include <algorithm>
using namespace std;
ifstream f("carnati.in");
ofstream g("carnati.out");
struct val{int t,p;}; val v[2005];
int n,c,rasp[2005];
bool op(val a,val b)
{
return a.t<b.t;
}
int main()
{
f>>n>>c;
for(int i=1;i<=n;i++)
{
f>>v[i].t>>v[i].p;
}
int ans=0;
for(int d=1;d<=n;d++)
{int cost=v[d].p;
for(int i=1;i<=n;i++) rasp[i]=0;
for(int i=1;i<=n;i++)
{
rasp[i]=max(rasp[i-1]-c*(v[i].t-v[i-1].t),0);
if(v[d].p>=cost) rasp[i]+=cost;
ans=max(ans,rasp[i]-C);
}
}
g<<ans;
}