Cod sursa(job #687833)

Utilizator vasile_pojogaPojoga Vasile vasile_pojoga Data 22 februarie 2012 19:39:28
Problema Submultimi Scor 100
Compilator fpc Status done
Runda Arhiva educationala Marime 1.1 kb
program submultimi;
var n,s:byte;
    x:array[0..100] of byte;
    fo:text;
procedure tipar(n:byte);
var i:byte;
begin
for i:=1 to n do write(fo,x[i],' ');
writeln(fo);
end;

function valid(k:byte):boolean;
var i:byte;
    b:boolean;
begin
b:=true;
for i:=1 to k-1 do if x[k]=x[i] then begin
                                     b:=false;
                                     break
                                     end;

if b then valid:=true
     else valid:=false;
end;

procedure back(k:byte);
var i:byte;
begin
 for i:=1 to n do begin
                  if i>x[k-1] then begin
                                   x[k]:=i;
                                   if valid(k) then begin
                                                    tipar(k);
                                                    back(k+1);
                                                    end;
                                   end;
                  end;
end;

begin
assign(fo,'submultimi.out'); rewrite(fo);
assign(input,'submultimi.in'); reset(input);
readln(n);
close(input);
back(1);
close(fo);
end.