Pagini recente » Cod sursa (job #2389930) | Cod sursa (job #1755820) | Cod sursa (job #787732) | Cod sursa (job #617063) | Cod sursa (job #2938473)
#include <bits/stdc++.h>
using namespace std;
ifstream f("branza.in");
ofstream g("branza.out");
deque <long long> dq;
long long n,s,t,c[1000005],p[1000005];
int main()
{
f >> n >> s >> t;
for (int i=1; i<=n; i++ )
{
f >> c[i] >> p[i];
}
for (int i=1; i<=n; i++ )
{
while ( !dq.empty() && c[dq.back()]+s*(i-dq.back())>=c[i] )
{
dq.pop_back();
}
while ( !dq.empty() && t<(i-dq.front()) )
{
dq.pop_front();
}
sl=sl+c[dq.front()]*p[i]+p[i]*(i-dq.front())*s;
}
return 0;
}