Cod sursa(job #265041)

Utilizator alinusalin idomir alinus Data 23 februarie 2009 09:45:00
Problema Generare de permutari Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.68 kb
var N , i  : longint;
    s : array[1..8] of integer;
    a : array[1..8] of integer;
    fi, fo : text;

PROCEDURE print;
VAR i : integer;
BEGIN

  FOR i := 1 to 8 do
    write(fo, s[i], ' ');
  writeln(fo);

END;

PROCEDURE back(p : integer);
VAR i : integer;
BEGIN

  FOR i := 1 to 8 do
    if a[i] = 0 then
      BEGIN

        s[p] := i;
        a[i] := 1;

        if (p < N) then back(p + 1)
           else print;

        s[p] := 0;
        a[p] := 0;

      END;

END;

BEGIN
   assign(fi, 'permutari.in');
   assign(fo, 'permutari.out');

   reset(fi);
   rewrite(fo);

   readln(fi, N);

   back(1);

   close(fi);
   close(fo);
END.