Pagini recente » Cod sursa (job #1151679) | Cod sursa (job #1477302) | Cod sursa (job #591056) | Cod sursa (job #3142045) | Cod sursa (job #2702492)
#include <bits/stdc++.h>
#define vt vector
#define INF 1e9
#define pb push_back
#define NMAX 100005
#define ll long long
using namespace std;
ll n,s,t,ans;
deque<ll>d;
vector<ll>c(NMAX);
vector<ll>p(NMAX);
int main()
{
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
scanf("%lli %lli %lli",&n,&s,&t);
ans=0;
for(int i=0;i<n;i++){
int x,y;
scanf("%lli %lli",&c[i],&p[i]);
while (!d.empty() && (c[d.back()] +(i-d.back())*s ) >= c[i])
d.pop_back();
while (!d.empty() && i-d.front() > t)
d.pop_front();
d.push_back(i);
ans+=c[d.front()]*p[i] + p[i]*(i-d.front())*s;
}
printf("%lli",ans);
return 0;
}