Pagini recente » Cod sursa (job #2178908) | Cod sursa (job #2435426) | Cod sursa (job #1218427) | Cod sursa (job #1705289) | Cod sursa (job #1817492)
#include <iostream>
#include<cstdio>
#include<algorithm>
int c,n,pmax;
struct client{
int t,p;
};
client v[2000];
bool cmp(client x,client y){
return x.t<y.t;
}
int pretmaxim(int nr){
int i,u,pc;
pc=-c;
for(i=0;i<n;i++){
u=0;
if(v[nr].p<=v[i].p)
u=v[nr].p;
if(pc-(v[i].t-v[i-1].t-1)*c<0)
pc=u-c;
else
pc=pc+u-(v[i].t-v[i-1].t)*c;
if(pc>pmax) pmax=pc;
}
return pmax;
}
using namespace std;
int main()
{
FILE *fin,*fout;
int i,pc;
fin=fopen("carnati.in","r");
fout=fopen("carnati.out","w");
fscanf(fin,"%d %d",&n,&c);
for(i=0;i<n;i++){
fscanf(fin,"%d %d",&v[i].t,&v[i].p);
}
sort(v,v+n,cmp);
pmax=0;
for(i=0;i<n;i++){
pc=pretmaxim(i);
//if(pc >pmax)
//pmax=pc;
printf("%d\n",pmax);
}
fprintf(fout,"%d",pc);
return 0;
}