Pagini recente » Cod sursa (job #1138532) | Cod sursa (job #1625085) | Cod sursa (job #2065367) | Cod sursa (job #1683285) | Cod sursa (job #358345)
Cod sursa(job #358345)
#include<stdio.h>
#define ll long long
long long sum;
long s,n,t,c[100006],v[100006],a[100006],b[100006],in,sf;
int main()
{
long i;
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
scanf("%ld%ld%ld",&n,&s,&t);
for (i=1;i<=n;i++)
{
scanf("%ld%ld",&a[i],&b[i]);
c[i]=a[i]+s*(n-i);
}
for (i=1;i<=n;i++)
{
while(in<=sf && c[i]<c[v[sf]])
sf--;
v[++sf]=i;
if(in<=sf && v[in]<i-t)
in++;
sum=sum+(ll)b[i]*(a[v[in]]+(i-v[in])*s);
}
printf("%lld",sum);
return 0;
}