Cod sursa(job #1089841)

Utilizator mariusadamMarius Adam mariusadam Data 21 ianuarie 2014 23:16:56
Problema Combinari Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.72 kb
program combinari;
var x:array[0..19] of byte;
    n,p:byte;
    f,g:text;

function cont(k:byte):boolean;
var i:byte;
begin
 cont:=true;
 if (k>1) and (x[k]<=x[k-1]) then
  cont:=false;
end;

procedure afisare(k:byte);
var i:byte;
begin
 for i:=1 to k do
  write(g,x[i],' ');
 writeln(g);
end;

procedure bkt;
var k:byte;
begin
 k:=1;
 x[k]:=0;
 while k>0 do
  if x[k]<n then
   begin
    x[k]:=x[k]+1;
    if cont(k) then
     if k=p then
      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);
 readln(f,n,p);
 bkt;
 close(f);
 close(g);
end.