Pagini recente » Cod sursa (job #1150160) | Cod sursa (job #1544303) | Cod sursa (job #2113003) | Cod sursa (job #3270429) | Cod sursa (job #2031867)
#include <bits/stdc++.h>
#define f first
#define s second
using namespace std;
ifstream F("branza.in");
ofstream G("branza.out");
int n, S, t, c, p;
long long sum;
deque<pair<long long, int> > 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+=1LL*((i-dq.front().s)*S+dq.front().f)*p;
if(!dq.empty()&&i-dq.front().s==t) dq.pop_front();
}
G << sum;
return 0;
}