Cod sursa(job #145376)

Utilizator valytgjiu91stancu vlad valytgjiu91 Data 28 februarie 2008 19:20:48
Problema Dusman Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.5 kb
const nmax=1000;
type stiva=array[1..nmax] of integer;
var f,g:text;
    a:array[1..nmax,1..nmax] of 0..1;
    x,y,l,m,n,i,o:longint;
    ap:array[1..nmax] of 0..1;
    st:stiva;
    q:boolean;
procedure back(k:longint);
var i,j:longint;
begin
     if k=N+1 then begin
                   o:=o+1;
                   if o=L then begin
                      For j:=1 To N-1 do
                          write(f,st[j],' ');
                      write(f,st[N]);
                      end;
                   end
              else begin
                        { succesorul }
                        For i:=1 To N do
                            begin
                                 St[k]:=i;
                                 if k=1 then q:=True
                                        else q:=(a[st[k],st[k-1]]=0) and (k>1);
                                 if ap[st[k]]=1 then q:=false;
                                 if q then begin
                                                ap[st[k]]:=1;
                                                back(k+1);
                                                ap[st[k]]:=0;
                                           end;
                            end;
                   end;
end;
begin
     assign(f,'dusman.in');reset(f);
     readln(f,n,l,m);
     for i:=1 to m do begin
         readln(f,x,y);
         a[x,y]:=1;
         a[y,x]:=1;
     end;
     close(f);
     assign(f,'dusman.out');rewrite(f);
     back(1);
     close(f);
End.