Pagini recente » Cod sursa (job #2202295) | Cod sursa (job #1874505) | Cod sursa (job #1497075) | Cod sursa (job #353677) | Cod sursa (job #2031872)
#include <bits/stdc++.h>
#define f first
#define s second
using namespace std;
ifstream F("branza.in");
ofstream G("branza.out");
long long n, S, t, c, p;
long long sum;
deque<pair<long long, long> > dq;
int main()
{
F>>n>>S>>t;
for(int i = 1; i <= n;++ i)
{
F >> c >> p;
while(!dq.empty()&&((i-dq.front().s)*S+dq.front().f)>c) dq.pop_front();
dq.push_back({c, i});
///pair<long long, int> x=dq.front();
if(!dq.empty()) sum+=((i-dq.front().s)*1LL*S+dq.front().f)*1LL*p;
if(!dq.empty()&&i-dq.front().s==t) dq.pop_front();
}
G << 1LL*sum;
return 0;
}