Pagini recente » Cod sursa (job #1667000) | Cod sursa (job #3223261) | Cod sursa (job #420423) | Cod sursa (job #1081178) | Cod sursa (job #2514601)
var i,o,p,m,n,k,l,x,a,b:longint;
rs:array[0..10004] of longint;
used:array[1..100004] of boolean;
dusman:array[0..10004,0..10004] of boolean;
fin,fout:textfile;
stop:boolean;
procedure backtrack(step:longint);
var i,o,j:longint;
begin
if not stop then begin
if step = n+1 then begin//
inc(x);
if x = k then begin
stop:=true;
for i:=1 to n do begin
write(fout,rs[i],' ' );
end;
end;
// writeln(fout);
end
else begin
for i:=1 to n do begin
if (not used[i]) and (not dusman[rs[step-1],i]) then begin
used[i]:=true;
rs[step]:=i;
// writeln(fout,step-1,' ',i);
{ if step = 4 then begin
for j:=1 to n do begin
write(fout,rs[j],' ');
end;
writeln(fout);
end; }
backtrack(step+1);
used[i]:=false;
end;
end;
end;
end;
end;
begin
assign(fin,'dusman.in'); reset(fin);
assign(fout,'dusman.out'); rewrite(fout);
read(fin,n,k,m);
for i:=1 to m do begin
read(fin,a,b);
dusman[a,b]:=true;
dusman[b,a]:=true;
end;
//writeln(fout,dusman[4,3]);
backtrack(1);
close(fin);
close(fout);
end.