Pagini recente » Cod sursa (job #2531494) | Cod sursa (job #2639993) | Borderou de evaluare (job #1010402) | Cod sursa (job #550561) | Cod sursa (job #209173)
Cod sursa(job #209173)
program pascal;
var f,g:text;
i,k,p,n:integer;
sol:array[1..100] of integer;
function count(k:integer):boolean;
begin
count:=true;
for i:=1 to k-1 do
if (sol[i]=sol[k]) or (sol[i]<=sol[i+1]) then
begin
count:=false;
break;
end;
end;
procedure tipar;
begin
for i:=p downto 1 do write(g,sol[i],' ');
writeln(g);
end;
procedure bkt;
begin
k:=1;
sol[k]:=0;
while k>0 do
if sol[k]<n then
begin
sol[k]:=sol[k]+1;
if count(k) then
if k=p then tipar
else
begin
k:=k+1;
sol[k]:=0;
end;
end
else k:=k-1;
end;
begin
assign(f,'combinari.in'); reset(f);
assign(g,'combinari.out'); rewrite(g);
read(f,n,p);
bkt;
close(f);
close(g);
end.