Pagini recente » Cod sursa (job #2015703) | Cod sursa (job #163005) | Cod sursa (job #231636) | Cod sursa (job #970047) | Cod sursa (job #2706664)
#include<iostream>
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("carnati.in");
ofstream g("carnati.out");
struct tip
{
int t,c;
}a[5000];
int n,c,i,k,b,a1,a2,j,m;
int cmp(tip a,tip b)
{
if(a.t<b.t)
return 1;
return 0;
}
int main()
{
f>>n>>c;
for(i=1;i<=n;i++)
f>>a[i].t>>a[i].c;
sort(a+1,a+n+1,cmp);
a[0].t=a[0].c=-10000;
for(k=a[1].c,j=1;j<=n;j++,k=a[j].c)
{
a2=-10000;
for(i=1;i<=n;i++)
{
if(a[i].c>=k)
b=k;
else
b=0;
a1=a2-(a[i].t-a[i-1].t)*c+b;
if(a1<b-c)
a1=b-c;
a2=a1;
if(a1>m)
m=a1;
}
}
g<<m;
return 0;
}