Pagini recente » Cod sursa (job #1954839) | Cod sursa (job #1444608) | Cod sursa (job #739928) | Cod sursa (job #287931) | Cod sursa (job #464597)
Cod sursa(job #464597)
#include <cstdio>
int t[2001],p[2001];
int main()
{
long long j,n,i,maxdr,maxst,max=0,c;
freopen("carnati.in","r",stdin);
scanf("%lld %lld",&n,&c);
for (i=1;i<=n;++i) scanf("%lld %lld",&t[i],&p[i]);
for (i=1;i<=n;++i)
{
long long mx=p[i]-c,nr=0;
maxst=maxdr=0;
for (j=i-1;j>0;--j)
if (p[j]>=p[i])
{++nr;
if (nr*p[i]-(t[i]-t[j])*c>maxst) maxst=nr*p[i]-(t[i]-t[j])*c;
}
nr=0;
for (j=i+1;j<=n;++j)
if (p[j]>=p[i])
{++nr;
if (nr*p[i]-(t[j]-t[i])*c>maxdr) maxdr=nr*p[i]-(t[j]-t[i])*c;
}
if (mx+maxst+maxdr>max) max=mx+maxst+maxdr;
}
freopen("carnati.out","w",stdout);
printf("%lld",max);
return 0;}