Pagini recente » Cod sursa (job #1635444) | Cod sursa (job #2093705) | Cod sursa (job #2408746) | Cod sursa (job #1566001) | Cod sursa (job #1791467)
#include<cstdio>
#include<algorithm>
struct Client
{
int timp;
int pret;
};
Client v[2000];
bool cmp(Client a,Client b)
{
return a.timp<b.timp;
}
int main()
{
int n,k,i,s,maxp=0,j,q;
FILE*fi,*fo;
fi=fopen("carnati.in","r");
fo=fopen("carnati.out","w");
fscanf(fi,"%d%d",&n,&k);
for(i=0; i<n; i++)
fscanf(fi,"%d%d",&v[i].timp,&v[i].pret);
std::sort(v,v+n,cmp);
maxp=0;
for(i=0; i<n; i++)
{
s=-k;
for(j=0; j<n; j++)
{
q=0;
if(v[j].pret>=v[i].pret)
{
q=v[i].pret;
}
if(s-(v[j].timp-v[j-1].timp-1)*k<0)
{
s=q-k;
}
else
{
s=s+q-(v[j].timp-v[j-1].timp)*k;
}
if(s>maxp)
maxp=s;
}
}
fprintf(fo,"%d",maxp);
fclose(fi);
fclose(fo);
return 0;
}