Cod sursa(job #277676)

Utilizator DrakeDemonSebestin Dragos DrakeDemon Data 11 martie 2009 20:48:31
Problema Energii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include<stdio.h>

long nrg,pwn,engcrt,costcrt,costmin,eng[1005],cost[5005];
long i,j;

int main(){
FILE *f = fopen("energii.in","r");
FILE *g = fopen("energii.out","w");
costmin = 50009;
fscanf(f,"%ld%ld",&nrg,&pwn);
for(i=1;i<=nrg;i++){
	fscanf(f,"%ld%ld",&eng[i],&cost[i]);
}
for(i=1;i<=nrg;i++){
	engcrt = eng[i];
	costcrt = cost [i];
	for(j=i+1;j<=nrg;j++){
	       if(eng[j]>=pwn)  {
			if(cost[j]<costmin)
				costmin = cost[j];


	       }else{
			engcrt +=eng[j];
			costcrt += cost[j];
			if(engcrt >= pwn){
                                if(costcrt<costmin)
					costmin = costcrt;
			
			if(costcrt>costmin){
				engcrt = eng[i] + eng[j];
				costcrt = cost[i] + cost[j];
				if(costcrt<costmin)
					costmin = costcrt;
				}

			}

		}

	}
}
fprintf(g,"%ld",costmin);
fclose(f);
fclose(g);
return 0;
}