Cod sursa(job #28145)

Utilizator adrianraduleaRadulea Adrian adrianradulea Data 7 martie 2007 15:32:27
Problema Energii Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.65 kb
var G,i,j:1..1001;
    W:1..5001;
    f,h:text;
    x:1..10001;
    a:array[1..2,1..1001] of 1..10001;
    cost:longint;
begin
assign(f,'energii.in'); reset(f);
assign(h,'energii.out'); rewrite(h);
readln(f,G);
readln(f,W);
for i:=1 to G do read(f,a[1,i],a[2,i]);
for i:=1 to G-1 do
  for j:=i+1 to G do
    if (a[1,i]/a[2,i])<(a[1,j]/a[2,j]) then begin
      x:=a[1,i];
      a[1,i]:=a[1,j];
      a[1,j]:=x;
      x:=a[2,i];
      a[2,i]:=a[2,j];
      a[2,j]:=x;
    end;
i:=1; cost:=0;
Repeat
  if a[1,i]<=W then begin
    cost:=cost+a[2,i];
    W:=W-a[1,i];
  end;
  i:=i+1;
until W<=0;
write(h,cost);
close(h);
end.