// output of ./demo/comb/partition-asc-sorts2-pp-demo.cc:
// Description:
//% Partitions into parts of s[k] sorts for part (size) k.
//% Representation as weakly ascending lists.
//% Lexicographic order: major order by parts, minor by sorts, where
//% comparison proceeds as part1, sort1; part2, sort2; part3, sort3, etc.
//% Cf. OEIS sequence A000219 (planar partitions).
//% Cf. OEIS sequences (partitions of n into parts of s kinds):
//% A000041 (s=1), A000712 (s=2), A000716 (s=3), A023003 (s=4),
//% A023004 (s=5), A023005 (s=6), A023006 (s=7), and A023007 (s=8).

arg 1: 6 == n  [partitions of n]  default=6
arg 2: 0 == ns  [Number of sorts for parts by size (0==>1,2,3,4,...,n)]  default=0
args 3,4,... : [Optionally supply number of sorts for all part sizes (ns ignored)]
   1:  [ 1:0  1:0  1:0  1:0  1:0  1:0  ]
   2:  [ 1:0  1:0  1:0  1:0  2:0  ]
   3:  [ 1:0  1:0  1:0  1:0  2:1  ]
   4:  [ 1:0  1:0  1:0  3:0  ]
   5:  [ 1:0  1:0  1:0  3:1  ]
   6:  [ 1:0  1:0  1:0  3:2  ]
   7:  [ 1:0  1:0  2:0  2:0  ]
   8:  [ 1:0  1:0  2:0  2:1  ]
   9:  [ 1:0  1:0  2:1  2:1  ]
  10:  [ 1:0  1:0  4:0  ]
  11:  [ 1:0  1:0  4:1  ]
  12:  [ 1:0  1:0  4:2  ]
  13:  [ 1:0  1:0  4:3  ]
  14:  [ 1:0  2:0  3:0  ]
  15:  [ 1:0  2:0  3:1  ]
  16:  [ 1:0  2:0  3:2  ]
  17:  [ 1:0  2:1  3:0  ]
  18:  [ 1:0  2:1  3:1  ]
  19:  [ 1:0  2:1  3:2  ]
  20:  [ 1:0  5:0  ]
  21:  [ 1:0  5:1  ]
  22:  [ 1:0  5:2  ]
  23:  [ 1:0  5:3  ]
  24:  [ 1:0  5:4  ]
  25:  [ 2:0  2:0  2:0  ]
  26:  [ 2:0  2:0  2:1  ]
  27:  [ 2:0  2:1  2:1  ]
  28:  [ 2:0  4:0  ]
  29:  [ 2:0  4:1  ]
  30:  [ 2:0  4:2  ]
  31:  [ 2:0  4:3  ]
  32:  [ 2:1  2:1  2:1  ]
  33:  [ 2:1  4:0  ]
  34:  [ 2:1  4:1  ]
  35:  [ 2:1  4:2  ]
  36:  [ 2:1  4:3  ]
  37:  [ 3:0  3:0  ]
  38:  [ 3:0  3:1  ]
  39:  [ 3:0  3:2  ]
  40:  [ 3:1  3:1  ]
  41:  [ 3:1  3:2  ]
  42:  [ 3:2  3:2  ]
  43:  [ 6:0  ]
  44:  [ 6:1  ]
  45:  [ 6:2  ]
  46:  [ 6:3  ]
  47:  [ 6:4  ]
  48:  [ 6:5  ]
 ct=48