(*{$N+,E+} *)
uses crt;
const max=20;
function fak(zahl:integer):integer;
begin
if zahl=0 then fak:=1
else fak:=fak(zahl-1)*zahl;
end;
var i,j,k :integer;
begin clrscr;
for i:=1 to max do
for j:=1 to max do
for k:=1 to max do if ( fak(i)+fak(j)+fak(k) ) = (i*j*k)
then writeln('---> ',i,' ',j,' ',k );
end.