Cod sursa(job #370001)

Utilizator Andrei200Andrei200 Andrei200 Data 29 noiembrie 2009 23:07:20
Problema Branza Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <cstdio>
#include <cstring>

#define file_in "branza.in"
#define file_out "branza.out"

#define Nmax 101001

int n,m[Nmax],s,t,i,j,suma,minim,c[Nmax],p[Nmax];

inline int min(int a, int b) { return a<b?a:b; }

int main()
{
	freopen(file_in,"r",stdin);
	freopen(file_out,"w",stdout);
	
	scanf("%d %d %d", &n, &s, &t);
	for (i=1;i<=n;++i)
		 scanf("%d %d", &c[i], &p[i]);
	
	for (i=1;i<=n;++i)
	{
		minim=0x3f3f3f3f;
		for (j=1;j<=t;++j)
			 if (i-j<=t)
				  minim=min(minim,c[j]+(i-j)*s);
		m[i]=minim;
	}
	
	suma=0;
	for (i=1;i<=n;++i)
		 suma+=p[i]*m[i];
	
	printf("%d\n", suma);
	
	fclose(stdin);
	fclose(stdout);
	
	return 0;
	
}