level 9
uses sysutils;
procedure boo(n,o:longint;s:ansistring);
var
i:longint;
begin
if n=0 then
writeln(s)
else
for i:= o to n do
if (n-i=0) or ((n-i)>i) then
boo(n-i,i+1,s+format('%8d',[i]));
end;
procedure foo(n,o:longint;s:ansistring);
var
i:longint;
begin
if n=0 then
writeln(s)
else
for i:= o to n do
foo(n-i,i,s+format('%8d',[i]));
end;
var
n:longint;
begin
readln(n);
boo(n,1,'');
foo(n,1,'');
end.
2018年02月12日 12点02分
6