Cod sursa(job #289900)

Utilizator b_ady20Branescu Adrian b_ady20 Data 27 martie 2009 09:49:54
Problema Generare de permutari Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 0.67 kb
var   v:array[1..1000] of integer;
        n,aux1,aux2,i,j:longint;
begin
assign (input,'permutari.in');
reset (input);
read (input,n);
close (input);
assign (output,'permutari.out');
rewrite (output);
for i:=1 to n do
begin
v[i]:=i;
write (output,v[i],' ');
end;
writeln (output);
repeat
i:=n-1;
while (i>0) and (v[i]>v[i+1]) do
dec(i);
if i>0 then
begin
for j:=n downto i+1 do
if v[j]>v[i] then
break;
aux1:=v[i];
v[i]:=v[j];
v[j]:=aux1;
j:=i+1;
aux2:=n;
while j<aux2 do begin
aux1:=v[aux2];
v[aux2]:=v[j];
v[j]:=aux1;
inc(j);
dec(aux2);
end;
for j:=1 to n do
write(output,v[j],' ');
writeln(output);
end;
until i=0;
close(output);
end.