Pagini recente » Cod sursa (job #2541819) | Cod sursa (job #482757) | Cod sursa (job #636106) | Cod sursa (job #2726895) | Cod sursa (job #2034736)
#include <fstream>
using namespace std;
ifstream fin("branza.in");
ofstream fout("branza.out");
int n,s,t;
long long C[100005],P[100005];
long long d[100005];
int main()
{ long long i,fr,bc;
fin>>n>>s>>t;
++t;
for(i=1;i<=n;++i)
fin>>C[i]>>P[i];
fr=1; bc=0;
long long sum=0;
for(i=1;i<=n;++i)
{
while(fr<=bc && C[i]*P[i] <= P[i]*C[d[bc]]+P[i]*(i-d[bc])*s ) --bc;
d[++bc]=i;
if(d[fr]==i-t)
fr++;
// fout<<P[i]*C[d[fr]]+P[i]*(i-d[fr])*s<<"\n";
sum+=P[i]*C[d[fr]]+P[i]*(i-d[fr])*s;
}
fout<<sum;
return 0;
}