Pagini recente » Cod sursa (job #2451881) | Poze preONI 2007 - gratar | Cod sursa (job #2655661) | Cod sursa (job #2450708) | Cod sursa (job #1492151)
#include <cstdio>
#define NMAX 100007
#define LL long long
using namespace std;
int n, s, t, dq[NMAX], st = 1, dr = 1;
LL v[NMAX], p, ans;
int main()
{
freopen("branza.in", "r", stdin);
freopen("branza.out", "w", stdout);
scanf("%d%d%d%lld%lld", &n, &s, &t, &v[1], &p);
dq[1] = 1;
ans = v[1]*p;
for(int i = 2; i<= n; ++i)
{
scanf("%lld %lld", &v[i], &p);
while(dr >= st && v[i] <= v[dq[dr]] + s*(i - dq[dr])) dr--;
dr++;
dq[dr] = i;
ans += (v[dq[st]]+s*(i - dq[st]))*p;
if(dq[st] + t <= i) st++;
}
printf("%lld\n", ans);
return 0;
}