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