Pagini recente » Cod sursa (job #1239547) | Cod sursa (job #2967502) | Cod sursa (job #1206198) | Cod sursa (job #3166671) | Cod sursa (job #2771089)
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
ifstream fin("branza.in");
ofstream fout("branza.out");
long long n,s,t,c[100009],i,v;
long long sum;
deque <int> deq;
int main()
{
fin>>n>>s>>t;
fin>>c[1]>>v;
sum+=v*c[1];
deq.push_back(1);
for(i=2;i<=n;i++){
fin>>c[i]>>v;
if(i-deq.front()==t+1)
deq.pop_front();
while(deq.empty()==0 && (c[deq.back()]+(i-deq.back())*s>=c[i]) )
deq.pop_back();
deq.push_back(i);
sum+=(c[deq.front()]+(i-deq.front())*s)*v;
}
fout<<sum;
}