// output of ./demo/comb/composition-colex2-demo.cc:
// Description:
//% Generating all compositions of n into k parts
//% in co-lexicographic (colex) order.
//% Algorithm efficient also with sparse case, i.e., k much greater than n.

arg 1: 3 == n  [Compositions of n (n>=1)]  default=3
arg 2: 5 == k  [Into k parts  (k-compositions of n) (k>=1) ]  default=5
   1:    [ 3 . . . . ]  4      111....    [ 0 1 2 ]
   2:    [ 2 1 . . . ]  1      11.1...    [ 0 1 3 ]
   3:    [ 1 2 . . . ]  1      1.11...    [ 0 2 3 ]
   4:    [ . 3 . . . ]  1      .111...    [ 1 2 3 ]
   5:    [ 2 . 1 . . ]  2      11..1..    [ 0 1 4 ]
   6:    [ 1 1 1 . . ]  1      1.1.1..    [ 0 2 4 ]
   7:    [ . 2 1 . . ]  1      .11.1..    [ 1 2 4 ]
   8:    [ 1 . 2 . . ]  2      1..11..    [ 0 3 4 ]
   9:    [ . 1 2 . . ]  1      .1.11..    [ 1 3 4 ]
  10:    [ . . 3 . . ]  2      ..111..    [ 2 3 4 ]
  11:    [ 2 . . 1 . ]  3      11...1.    [ 0 1 5 ]
  12:    [ 1 1 . 1 . ]  1      1.1..1.    [ 0 2 5 ]
  13:    [ . 2 . 1 . ]  1      .11..1.    [ 1 2 5 ]
  14:    [ 1 . 1 1 . ]  2      1..1.1.    [ 0 3 5 ]
  15:    [ . 1 1 1 . ]  1      .1.1.1.    [ 1 3 5 ]
  16:    [ . . 2 1 . ]  2      ..11.1.    [ 2 3 5 ]
  17:    [ 1 . . 2 . ]  3      1...11.    [ 0 4 5 ]
  18:    [ . 1 . 2 . ]  1      .1..11.    [ 1 4 5 ]
  19:    [ . . 1 2 . ]  2      ..1.11.    [ 2 4 5 ]
  20:    [ . . . 3 . ]  3      ...111.    [ 3 4 5 ]
  21:    [ 2 . . . 1 ]  4      11....1    [ 0 1 6 ]
  22:    [ 1 1 . . 1 ]  1      1.1...1    [ 0 2 6 ]
  23:    [ . 2 . . 1 ]  1      .11...1    [ 1 2 6 ]
  24:    [ 1 . 1 . 1 ]  2      1..1..1    [ 0 3 6 ]
  25:    [ . 1 1 . 1 ]  1      .1.1..1    [ 1 3 6 ]
  26:    [ . . 2 . 1 ]  2      ..11..1    [ 2 3 6 ]
  27:    [ 1 . . 1 1 ]  3      1...1.1    [ 0 4 6 ]
  28:    [ . 1 . 1 1 ]  1      .1..1.1    [ 1 4 6 ]
  29:    [ . . 1 1 1 ]  2      ..1.1.1    [ 2 4 6 ]
  30:    [ . . . 2 1 ]  3      ...11.1    [ 3 4 6 ]
  31:    [ 1 . . . 2 ]  4      1....11    [ 0 5 6 ]
  32:    [ . 1 . . 2 ]  1      .1...11    [ 1 5 6 ]
  33:    [ . . 1 . 2 ]  2      ..1..11    [ 2 5 6 ]
  34:    [ . . . 1 2 ]  3      ...1.11    [ 3 5 6 ]
  35:    [ . . . . 3 ]  4      ....111    [ 4 5 6 ]
 ct=35
