Pagini recente » Cod sursa (job #2146963) | Cod sursa (job #1671290) | Cod sursa (job #918005) | Cod sursa (job #2346238) | Cod sursa (job #2913875)
#include <fstream>
#include <cmath>
#include <vector>
#include <list>
using namespace std;
ifstream cin("branza.in");
ofstream cout("branza.out");
vector <int> v;
list <int> l;
int main()
{
int n,s,t,a,b,sum=0;
cin>>n>>s>>t;
for(int i=0;i<n;i++)
{
cin>>a>>b;
v.push_back(a);
while(l.empty()==0&&v[l.back()]+i*s-l.back()*s>=v[i])
l.pop_back();
l.push_back(i);
if(i-l.front()+1>t)
l.pop_front();
sum+=(v[l.front()]+(i-l.front())*s)*b;
}
cout<<sum;
return 0;
}