Pagini recente » Cod sursa (job #3771) | Cod sursa (job #1735558) | Cod sursa (job #2575233) | Cod sursa (job #1098063) | Cod sursa (job #3241119)
#include<fstream>
#include<deque>
using namespace std;
ifstream fin ("branza.in");
ofstream fout("branza.out");
long long c[100001], q[100001];
int n, s, t, sum, i;
deque<long long>dq;
int main(){
fin>>n>>s>>t;
for(i=1;i<=n;i++){
fin>>c[i]>>q[i];
while(dq.empty()==false && c[i]<=c[dq.back()]+(i-dq.back())*s)
dq.pop_back();
dq.push_back(i);
if(i-dq.front()==t+1)
dq.pop_front();
sum+=q[i]*(c[dq.front()]+(i-dq.front())*s);
}
fout<<sum<<" ";
}