Pagini recente » Cod sursa (job #1182717) | Cod sursa (job #3258561) | Cod sursa (job #213873) | Cod sursa (job #2941014) | Cod sursa (job #209070)
Cod sursa(job #209070)
#include <stdio.h>
long long n, t, s, c[100010], p[100010], d[100010], o , r, to, k, i;
int main()
{
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
scanf("%lld %lld %lld", &n, &s, &t);
k = 0;
r = 1;
for(i=1; i<=n; i++)
{
scanf("%d %d", &c[i], &p[i]);
if (d[r]<i-t) r++;
while((c[d[k]]+s*(i-d[k])>=c[i])&&(k>=r))
{
k--;
}
k++;
d[k] = i;
to += p[i]*(c[d[r]]+s*(i-d[r]));
}
printf("%lld\n", to);
return 0;
}