Pagini recente » Cod sursa (job #2742330) | Cod sursa (job #1537542) | Cod sursa (job #3038826) | Cod sursa (job #1503720) | Cod sursa (job #3324476)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("carnati.in");
ofstream cout("carnati.out");
const int dim= 2e3+ 5;
struct ura
{
int t, p;
}v[dim];
bool cmp(ura a, ura b){
return a.t < b.t;
}
int main()
{
int i, n, c, j;
cin >> n>> c;
for(i= 1;i <= n;i++){
cin >> v[i].t>> v[i].p;
}
sort(v+ 1, v+ 1+ n, cmp);
/*for(i= 1;i <= n;i++)
cout << v[i].t<<" "<< v[i].p<< endl;
cout << endl<< endl;*/
int maxi= -1;
v[0].t= v[1].t;
for(i= 1;i <= n;i++){
//cout << "i= "<< i<< endl;
int pret= v[i].p, sum= 0;
for(j= 1;j <= n;j++){
sum-= (v[j].t- v[j- 1].t)* c;
sum= max(0, sum);
if(v[j].p >= pret)
sum+= pret;
//cout << j<<" "<< sum<< endl;
maxi= max(maxi, sum);
}
//cout << endl<< endl;
}
cout << maxi- c;
return 0;
}