Pagini recente » Cod sursa (job #1494761) | Cod sursa (job #2754679) | Cod sursa (job #1168521) | Cod sursa (job #1092875) | Cod sursa (job #2626059)
#include <fstream>
#define dim 100001
using namespace std;
long long C[dim], P[dim], n, s, t, sol, i, v[dim], p, u;
int main()
{
ifstream fin ("branza.in");
ofstream fout ("branza.out");
fin>>n>>s>>t;
for (i=1; i<=n; i++)
{
fin>>C[i]>>P[i];
C[i]+=s*(n-i);
}
p=1; u=0;
for (i=1; i<=n; i++)
{
while (C[i]<=C[v[u]] && p<=u)
u--;
v[++u]=i;
if (v[u]-v[p]==t+1)
p++;
sol+=P[i]*(C[v[p]]-s*(n-i));
}
fout<<sol;
}