Pagini recente » Cod sursa (job #2050350) | Cod sursa (job #839848) | Cod sursa (job #50067) | Cod sursa (job #1892396) | Cod sursa (job #2307036)
#include <bits/stdc++.h>
using namespace std;
struct client{
int t,p;
}C[2010];
int c,n,sol=0;
ifstream fin("carnati.in");
ofstream fout("carnati.out");
int DP(int ind){
int ans=0,sum=0,g=0;
for(int i=0;i<n;i++){
if(C[ind].p<=C[i].p)g=C[ind].p;
else g=0;
sum=max(sum-(C[i].t-C[i-1].t)*c+g,g-c);
ans=max(ans,sum);
}
return ans;
}
int main(){
fin>>n>>c;
for(int i=0;i<n;i++){
fin>>C[i].t>>C[i].p;
}
for(int i=0;i<n;i++){
sol=max(sol,DP(i));
}
fout<<sol;
return 0;
}