比赛 搜索题... 评测结果 AAAAAAAAAA
题目名称 分组 最终得分 100
用户昵称 kamisama 运行时间 0.002 s
代码语言 Pascal 内存使用 0.35 MiB
提交时间 2014-11-04 18:31:18
显示代码纯文本
var
  n,m,i,ans,l:longint;
  p:array[1..11] of integer;
  pr:array[1..10000,1..10] of integer;


procedure mem;
var
  k:longint;
begin
  for k:=1 to m do 
	pr[ans,k]:=p[k];
end;


procedure test(a,b,c:longint);
var
  j:longint;
begin
  if (c=m) and (b<>0) then exit;
  if (c=m) and (b=0) then
  begin
    inc(ans);
    mem;
    exit;
  end;
  for j:=a to b do
  begin
    p[c+1]:=j;
    test(j,b-j,c+1);
  end;
end;


  
begin
  assign(input,'dataa.in');
  assign(output,'dataa.out');
  reset(input);rewrite(output);
  read(n,m);
  for i:=1 to n-m+1 do 
  begin
	p[1]:=i;
    test(i,n-i,1);
  end;  
  
  writeln(ans);
  for i:=1 to ans do
  begin
	for l:=1 to m-1 do write(pr[i,l],' ');
	writeln(pr[i,m]);
  end;
  close(input);
  close(output);
end.