Cod sursa(job #420044)

Utilizator Cristy94Buleandra Cristian Cristy94 Data 18 martie 2010 13:09:20
Problema Branza Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include<stdio.h>
FILE *f=fopen("branza.in","r");
FILE *g=fopen("branza.out","w");
long long i,j,m[100001],n,t,s,rez;
int c[100001],p[1000001];

int main(){
//***citire***//	
fscanf(f,"%lld%lld%lld",&n,&s,&t);
for(i=1;i<=n;i++)
	fscanf(f,"%lld%lld",&c[i],&p[i]);

//***dinamica***//
for(i=1;i<=n;i++)  // m[i]=costul minim pt a cumpara un kg de branza in ziua i
{ j=i-t;
  m[i]=c[i];
  if(j<1)
	   j=1;
  for(;j<i;j++)
	  if( m[i] > c[j]+s*(i-j) ) // depoziteaza branza in ziua j
		     m[i]=c[j]+s*(i-j);
	
}
for(i=1;i<=n;i++)
	rez+=m[i]*p[i];
fprintf(g,"%lld",rez);
return 0;
}