Pagini recente » Cod sursa (job #1073480) | Cod sursa (job #1587794) | Cod sursa (job #2700844) | Cod sursa (job #1084825) | Cod sursa (job #2287672)
#include <bits/stdc++.h>
using namespace std;
int v[100001],d[100001];
int main()
{
long long n,s,t,i,ss=0,st=0,dr=-1,p;
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
scanf("%lld%lld%lld", &n, &s, &t);
for (i=1;i<=n;i++) {
scanf("%d%lld", &v[i], &p);
if (i>=t && d[st]==i-t)
st++;
while (v[i]>0 && v[i]<=v[d[dr]]+s*(i-d[dr]) && st<=dr)
dr--;
d[++dr]=i;
ss+=p*v[d[st]]+s*(i-d[st])*p;
}
printf("%lld", ss);
return 0;
}