Pagini recente » Cod sursa (job #1233587) | Cod sursa (job #2644713) | Cod sursa (job #988672) | Cod sursa (job #994203) | Cod sursa (job #2888313)
#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("queue.out");
ifstream cin("queue.in");
cin >> n >> s >> t;
for (int i = 0; i < n; i++)
{
cin >> price >> cat;
while (!v.empty() and price <= s * (i - v.front().second) + v.back().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;
}