Cod sursa(job #262814)

Utilizator Cristian_BBerceanu Cristian Cristian_B Data 19 februarie 2009 17:54:28
Problema Energii Scor 30
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.82 kb
var v,c:array[1..1002] of longint;
    ok:boolean;
    i,n,j:longint;
    m:longint;
    ct,s:longint;
    f,g:text;
procedure load;
begin
assign(f,'energii.in');
reset(f);
readln(f,n);
readln(f,m);
for i:=1 to n do
readln(f,v[i],c[i]);
close(f);
assign(g,'energii.out');
rewrite(g);
end;
procedure sort;
var i,j,aux1,aux2:integer;
begin
for i:=1 to n-1 do
for j:=i+1 to n do
if c[i]>c[j] then
begin
aux1:=v[i];
v[i]:=v[j];
v[j]:=aux1;
aux2:=c[i];
c[i]:=c[j];
c[j]:=aux2;
end;

end;
BEGIN
load;
sort;
i:=1;
s:=0;ct:=0;
while (s<=m) and (i<=n) do
begin
s:=s+v[i];
ct:=ct+c[i];
i:=i+1;
end;
ok:=false;
for i:=1 to n do
begin
if (v[i]>=m) and (c[i]<ct) then
begin
 write(g,c[i]);
 ok:=true;
end;

end;
if (not ok) and (s>=m) then write(g,ct);
if s<m then writeln(g,-1);
close(g);
END.