Pagini recente » Cod sursa (job #269973) | Cod sursa (job #942658) | Cod sursa (job #764523) | Cod sursa (job #381611) | Cod sursa (job #2732415)
# include <fstream>
# include <deque>
# include <algorithm>
using namespace std;
ifstream f("branza.in");
ofstream g("branza.out");
deque <int> dequ;
int i,j,n,m,S,T;
int c[100005], p[100005];
long long total;
int main ()
{
f>>n>>S>>T;
for (i=1; i<=n; ++i)
{
f>>c[i]>>p[i];
while (! dequ.empty() && c[i]<=c[dequ.back()]+S*(i-dequ.back()))
dequ.pop_back();
dequ.push_back(i);
if (dequ.front()<i-T) dequ.pop_front();
total+=(p[i]*c[dequ.front()]+S*p[i]*(i-dequ.front()));
}
g<<total<<"\n";
return 0;
}