Pagini recente » Cod sursa (job #1837500) | Cod sursa (job #784508) | Cod sursa (job #1313724) | Cod sursa (job #1016588) | Cod sursa (job #871133)
Cod sursa(job #871133)
program combinari;
type vector=array[1..18] of byte;
var x:vector;
n,p,k:byte;
f,g:text;
procedure init (i:byte);
begin x[i]:=0; end;
function valid (p:byte):boolean;
var i:byte;
begin
valid:=true;
i:=1;
while (i<=p-1) and (valid) do
begin if (x[i]=x[p]) or (x[i]>=x[p]) then valid:=false;
i:=i+1;
end;
end;
procedure afis (p:byte);
var i:byte;
begin
for i:=1 to p do write (g,x[i],' ');
writeln (g);
end;
procedure back;
begin
p:=1;
while (p>0) do
if (x[p]<n) then begin x[p]:=x[p]+1;
if (valid(p)) then if (p=k) then afis (p)
else begin p:=p+1;
init(p);
end
end
else p:=p-1;
end;
begin
assign (f,'combinari.in'); reset (f);
assign (g,'combinari.out'); rewrite (g);
read (f,n,k);
back;
close (f);
close (g);
end.