Pagini recente » Cod sursa (job #2466829) | Cod sursa (job #2754656) | Cod sursa (job #207505) | Cod sursa (job #2587771) | Cod sursa (job #1356811)
program infoarena2;
var f,g:text;
n,p:integer;
x:array[1..18] of byte;
procedure afisare(k:integer);
var i:integer;
begin
for i:=1 to k do
write(g,x[i],' ');
writeln(g);
end;
function cont(k:integer):boolean;
var i:integer;
begin
cont:=true;
if (k > 1) and (x[k-1] >= x[k]) then
cont:=false;
end;
procedure bkt;
var k:integer;
begin
k:=1;
x[k]:=0;
while k>0 do
if x[k]<n then// daca mai exista valori netestate
begin
x[k]:=x[k]+1;// dau urmatoarea valoare posibila
if cont(k) then
if k=p then// daca am determinat o solutie
afisare(k)
else
begin
k:=k+1;
x[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.