Pagini recente » Cod sursa (job #2230823) | Cod sursa (job #2266294) | Cod sursa (job #1616116) | Cod sursa (job #2506400) | Cod sursa (job #2888322)
#include <fstream>
#include <deque>
using namespace std;
long long k, t, s, n, d = 0, price, cat = 0;
deque<pair<long long, long long>> v;
int main()
{
ofstream cout("branza.out");
ifstream cin("branza.in");
cin >> n >> s >> t;
for (long long i = 0; i < n; i++)
{
cin >> price >> cat;
while (!v.empty() and price <= s * (i - v.front().second) + v.front().first)
{
v.pop_front();
}
v.push_front({price, i});
if (!v.empty() and v.back().second < i - t)
{
v.pop_back();
}
d += v.back().first * cat + s * cat * (i - v.back().second);
}
cout << d ;
return 0;
}