Pagini recente » Cod sursa (job #2492269) | Cod sursa (job #28327) | Cod sursa (job #3292374) | Cod sursa (job #3283848) | Cod sursa (job #198085)
Cod sursa(job #198085)
program permutari;
var x:array[1..10] of byte;
n,k,v,j:byte;
f,g:text;
function valid(k:integer):boolean;
var i:byte;
begin
valid:=true;
for i:=1 to k-1 do
if x[k]=x[i] then begin
valid:=false;
exit;
end;
end;
begin
assign(f,'permutari.in');reset(f);
assign(g,'permutari.out');rewrite(g);
read(f,n);
x[1]:=0; k:=1;
while k>0 do begin
v:=0;
while (v=0)and(x[k]+1<=n) do begin
x[k]:=x[k]+1;
if valid(k) then v:=1;
end;
if v=0 then k:=k-1
else if k<n then begin
k:=k+1;
x[k]:=0;
end
else begin
for j:=1 to n do write(g,x[j],' ');
writeln(g);
end
end;
close(g);
end.