Pagini recente » Cod sursa (job #1892262) | Cod sursa (job #3289498) | Cod sursa (job #1453613) | Cod sursa (job #1376062) | Cod sursa (job #68190)
Cod sursa(job #68190)
#include <cstdio>
using namespace std;
#define Nmax 100100
#define v(r) (c[r] + (n-r)*s)
int c[Nmax], p[Nmax], w[Nmax];
int main()
{
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
int n,s,t,st,dr;
long long ret=0;
st=dr=1;
c[0] = 2114567890;
scanf("%d%d%d",&n,&s,&t);
for (int i=1;i<=n;++i)
{
scanf("%d%d",&c[i],&p[i]);
while(v(w[dr]) > v(i) && st<=dr) --dr;
w[++dr] = i;
ret += (long long)(v(w[st]) - (n-i)*s)*p[i];
if(w[st] == i-t) ++st;
}
printf("%lld\n", ret);
return 0;
}