Pagini recente » Cod sursa (job #2735433) | Cod sursa (job #1771148) | Cod sursa (job #2095380) | Cod sursa (job #1257120) | Cod sursa (job #155383)
Cod sursa(job #155383)
#include <stdio.h>
struct ggg
{
long t,p;
};
typedef struct ggg pozis;
pozis a[2010];
long N,nr;
long S,k,suma[2010],K;
void citire()
{
freopen ("carnati.in","r",stdin);
scanf("%ld%ld",&N,&K);
for (int i=0;i<N;i++)
scanf("%ld%ld",&a[i].t,&a[i].p);
fclose(stdout);
}
void maxim()
{
long long maxim=0;
for (int i=0;i<N;i++)
{
long long S=0,poz=0,ok=0;
for (int k=0;k<N;k++)
{
if (a[k].p>=a[i].p && ok==0)
{
ok=1;
S=a[i].p;
poz=a[k].t;
}
else
{
if (a[k].p>=a[i].p)
{
S+=a[i].p;
}
}
if (S+(poz-a[k].t-1)*K<0)
{
S=0;
ok=0;
}
else
if (S+(poz-a[k].t-1)*K>maxim)
maxim=S+(poz-a[k].t-1)*K;
}
}
freopen ("carnati.out","w",stdout);
printf ("%lld\n",maxim);
fclose (stdout);
}
int main ()
{
citire();
maxim();
return 0;
}