Cod sursa(job #641848)

Utilizator andrei_toaderToader Andrei Sorin andrei_toader Data 29 noiembrie 2011 18:17:48
Problema Generare de permutari Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.71 kb
program generare;
var f,g:text;
    n:byte;
    v:array [1..8] of byte;

function contin (k:integer):boolean;
var i:integer;
begin
 contin:=true;
 for i:=1 to k-1 do
  if v[i]=v[k] then
  begin
   contin:=false;
   break;
  end;
end;

procedure bkt;
var k,i:byte;
begin
 k:=1; v[k]:=0;
 while k>0 do
  if v[k]<n then
  begin
   v[k]:=v[k]+1;
   if contin (k) then
    if k=n then
    begin
    for i:=1 to n do
     write (g,v[i],' ');
    writeln (g);
    end
    else
    begin
     k:=k+1; v[k]:=0;
    end;
  end
  else
   k:=k-1;
end;

begin
 assign (f,'permutari.in'); reset (f);
 assign (g,'permutari.out'); rewrite (g);
 read (f,n);
 bkt;
 close (f);
 close (g);
end.