Cod sursa(job #133440)

Utilizator a7893Nae Mihai a7893 Data 8 februarie 2008 17:41:01
Problema Branza Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<stdio.h>
#define N 100001
int n,s,t,c[N],p[N],m[N],sol;
void read()
{
	int i;
	scanf("%d%d%d",&n,&s,&t);
	for(i=1;i<=n;i++)
		scanf("%d%d",&c[i],&p[i]);
}
void solve()
{
	int i,j;
	for(i=1;i<=n;i++)
		m[i]=N*1000;
	for(i=n;i>=1;i--)
		for(j=i;i-j<=t&&j>0;j--)
			if(m[i]>c[j]+(i-j)*s)
				m[i]=c[j]+(i-j)*s;
	for(i=1;i<=n;i++)
		sol+=m[i]*p[i];
	printf("%d\n",sol);
}
int main()
{
	freopen("branza.in","r",stdin);
	freopen("branza.out","w",stdout);
	read();
	solve();
	return 0;
}