Pagini recente » Cod sursa (job #2395698) | Cod sursa (job #1058440) | Cod sursa (job #3205757) | Cod sursa (job #720406) | Cod sursa (job #3242854)
#include <bits/stdc++.h>
using namespace std;
long long int dq[100009], a[100008];
int main(void){
ofstream cout("branza.out");
ifstream cin("branza.in");
int n,s,t;
cin >> n >> s >> t;
int first = 1, second = 0;
long long int ans = 0;
for(int i = 1;i<=n;i++){
int c,e;
cin >> c >> e;
a[i] = c;
while(first <= second && c<= a[dq[second]] + (i - dq[second]) * s){
second--;
}
dq[++second] = i;
ans += (a[dq[first]]+ (i - dq[first]) * s) * e;
if(i - dq[first] == t){
first++;
}
}
cout << ans;
}