Pagini recente » Cod sursa (job #3156569) | Cod sursa (job #3246853) | Cod sursa (job #810324) | Cod sursa (job #1281616) | Cod sursa (job #1641829)
#include <iostream>
#include <fstream>
#define Max 100005
using namespace std;
ifstream f("branza.in");
ofstream g("branza.out");
int v[Max], d[Max],n,s,t;
long long sum;
void rez()
{
f>>n>>s>>t;
int head=1,tail=0,i,p;
for(i=1;i<=n;++i)
{
f>>v[i]>>p;
while(head<=tail&&v[i]<v[d[tail]]+((i-d[tail])*s))tail--;
d[++tail]=i;
while(head<=tail&&i-d[head]>=t)head++;
sum+=(long long)(v[d[head]] +(i-d[head])*s)*p;
}
g<<sum;
}
int main()
{
rez();
return 0;
}