Cod sursa(job #411029)

Utilizator hungntnktpHungntnktp hungntnktp Data 4 martie 2010 18:13:31
Problema Generare de permutari Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.8 kb
{DINH QUANG DAT TIN 07-10}
{PERMUTARI}
CONST
 TFI='permutari.in';
 TFO='permutari.out';
 MAX=10;
TYPE
 arr1int=array[0..MAX] of longint;
VAR
 fi,fo:text;
 n:longint;
 free:array[0..MAX] of boolean;
 res:arr1int;

PROCEDURE       input;
begin
 read(fi,n);
end;

PROCEDURE       init;
begin
 fillchar(free,sizeof(free),true);
end;

PROCEDURE       go(i:longint);
var
 j:longint;
begin
 if i>n then
  begin
   for j:= 1 to n do write(fo,res[j],' ');
   writeln(fo);
  end;
 for j:= 1 to n do
  if free[j] then
   begin
    res[i]:=j;
    free[j]:=false;
    go(i+1);
    free[j]:=true;
   end;
end;

PROCEDURE       process;
begin
 go(1);
end;

BEGIN
 assign(fi,tfi);reset(fi);
 assign(fo,tfo);rewrite(fo);
  input;
  init;
  process;
 close(fo);
 close(fi);
END.