Pagini recente » Cod sursa (job #968953) | Cod sursa (job #3140175) | Cod sursa (job #3216277) | Cod sursa (job #3129182) | Cod sursa (job #2166916)
#include <bits/stdc++.h>
#define nrmax 2002
#define INF 0x3f3f3f3f
using namespace std;
ifstream input("carnati.in");
ofstream print("carnati.out");
int n,c;
struct client{
int t, p;
}v[nrmax];
bool cmp(client x, client y){
return (x.t<y.t);
}
int sum(int index){
int s=-1,s_max=-INF,j,x;
for(j=1;j<=n;++j){
if(v[index].p<=v[j].p)
x=v[index].p;
else x=0;
if(j==1)
s=x-c;
else s=max(x-c,s+x-c*(v[j].t-v[j-1].t));
s_max=max(s_max,s);
}
return s_max;
}
int main(){
int i,maxim=-INF;
input>>n>>c;
for(i=1;i<=n;++i)
input>>v[i].t>>v[i].p;
sort(v+1,v+n+1,cmp);
for(i=1;i<=n;++i)
maxim=max(maxim,sum(i));
print<<maxim;
return 0;
}