Pagini recente » Cod sursa (job #202755) | Cod sursa (job #627492) | Cod sursa (job #1902335) | Cod sursa (job #1368607) | Cod sursa (job #911939)
Cod sursa(job #911939)
#include <cstdio>
#include <deque>
using namespace std;
deque<long long> d;
int n;
long long s,t;
long long a[100100];
long long b[100100];
long long sol;
int main()
{
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
scanf("%d%lld%lld",&n,&s,&t);
for(int i=1;i<=n;++i)
{
scanf("%lld%lld",&a[i],&b[i]);
while(!d.empty()&&i-d.front()>t)
d.pop_front();
while(!d.empty()&&a[d.back()]+s*(i-d.back())>a[i])
d.pop_back();
d.push_back(i);
sol+=a[d.front()]*b[i];
sol+=b[i]*s*(i-d.front());
}
printf("%lld",sol);
return 0;
}