Pagini recente » Cod sursa (job #2109462) | Cod sursa (job #873592) | Cod sursa (job #2432927) | Cod sursa (job #960560) | Cod sursa (job #516983)
Cod sursa(job #516983)
#include <fstream>
#include <deque>
#define DN 1000005
#define sz d.size()
#define fr d.front()
#define bk d.back()
using namespace std;
deque<int> d;
int n,s,t,c[DN],p[DN],r;
int main()
{
ifstream f("branza.in");
ofstream g("branza.out");
f>>n>>s>>t;
for(int i=1; i<=n; ++i) {
f>>c[i]>>p[i];
if(sz && i-fr>t) d.pop_front();
for (;sz && c[bk]+(i-bk)*s>=c[i]; d.pop_back());
d.push_back(i);
r+=((c[fr]+(i-fr)*s)*p[i]);
}
g<<r;
return 0;
}