Cod sursa(job #300779)
| Utilizator | Data | 7 aprilie 2009 17:53:42 | |
|---|---|---|---|
| Problema | Branza | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <cstdio>
int n,s,t;
int cost[100001],cap[100001];
long long cos=0,nr;
void citire()
{
scanf("%d %d %d",&n,&s,&t);
for(int i=1;i<=n;i++)
scanf("%d %d",&cost[i],&cap[i]);
}
void calcul()
{
long long i,j;
for(i=1;i<=n;i++)
{
nr=cost[i];
for(j=i;j>=i-t && j>=1;j--)
if(cost[j]+(i-j)*s<nr)
nr=cost[j]+(i-j)*s;
cos=cos+nr*cap[i];
}
}
int main()
{
freopen("branza.in","r",stdin);
freopen("branza.out","w",stdout);
citire();
calcul();
printf("%d",cos);
}
