Pagini recente » Cod sursa (job #607590) | Cod sursa (job #1104197) | Cod sursa (job #383766) | Cod sursa (job #744949) | Cod sursa (job #50864)
Cod sursa(job #50864)
var s:array[1..6] of byte;
a:array[1..100] of longint;
f,g:text;
i,n,sm,k,scrr:longint;
ev,sf:boolean;
procedure solutie;
var i:longint;
begin
for i:=1 to 6 do
write(g,a[s[i]],' ');
writeln(g);
close(f);
close(g);
halt(0);
end;
procedure back;
begin
k:=1;
s[1]:=0;
while k<>0 do begin
repeat
inc(s[k]);
if s[k]>n then sf:=true
else sf:=false;
if not sf then
if a[s[k]]+scrr>sm then ev:=false
else ev:=true;
until sf or (ev and not sf);
if sf or (k>6) then begin
dec(k);
dec(scrr,a[s[k]]);
end
else
if (k=6) and (scrr+a[s[k]] = sm) then
solutie
else
begin
inc(scrr,a[s[k]]);
inc(k);
s[k]:=s[k-1]-1;
end;
end;
end;
begin
assign(f,'loto.in');
assign(g,'loto.out');
reset(f);
rewrite(g);
read(f,n,sm);
for i:=1 to n do
read(f,a[i]);
back;
writeln(g,-1);
close(f);
close(g);
end.