// output of ./demo/comb/composition-rank-demo.cc:
// Description:
//% Ranking and unranking compositions
//% in lexicographic, Gray, and enup (two-close) order

arg 1: 5 == k  [k-compositions of n (k>=1) ]  default=5
arg 2: 3 == n  [ (n>=1)]  default=3
arg 3: 2 == rd  [ Order: 0==>lex,  1==>Gray,  2==>enup (two-close)]  default=2
   0:    [ . . . . 3 ]    [ . . . . 0 1 2 ]    [ . . . . 1 1 1 ]
   1:    [ . . 1 . 2 ]    [ . . 0 . . 1 2 ]    [ . . 1 . . 1 1 ]
   2:    [ 1 . . . 2 ]    [ 0 . . . . 1 2 ]    [ 1 . . . . 1 1 ]
   3:    [ . 1 . . 2 ]    [ . 0 . . . 1 2 ]    [ . 1 . . . 1 1 ]
   4:    [ . . . 1 2 ]    [ . . . 0 . 1 2 ]    [ . . . 1 . 1 1 ]
   5:    [ . . . 2 1 ]    [ . . . 0 1 . 2 ]    [ . . . 1 1 . 1 ]
   6:    [ . . 1 1 1 ]    [ . . 0 . 1 . 2 ]    [ . . 1 . 1 . 1 ]
   7:    [ 1 . . 1 1 ]    [ 0 . . . 1 . 2 ]    [ 1 . . . 1 . 1 ]
   8:    [ . 1 . 1 1 ]    [ . 0 . . 1 . 2 ]    [ . 1 . . 1 . 1 ]
   9:    [ . 2 . . 1 ]    [ . 0 1 . . . 2 ]    [ . 1 1 . . . 1 ]
  10:    [ 1 1 . . 1 ]    [ 0 . 1 . . . 2 ]    [ 1 . 1 . . . 1 ]
  11:    [ 2 . . . 1 ]    [ 0 1 . . . . 2 ]    [ 1 1 . . . . 1 ]
  12:    [ 1 . 1 . 1 ]    [ 0 . . 1 . . 2 ]    [ 1 . . 1 . . 1 ]
  13:    [ . 1 1 . 1 ]    [ . 0 . 1 . . 2 ]    [ . 1 . 1 . . 1 ]
  14:    [ . . 2 . 1 ]    [ . . 0 1 . . 2 ]    [ . . 1 1 . . 1 ]
  15:    [ . . 3 . . ]    [ . . 0 1 2 . . ]    [ . . 1 1 1 . . ]
  16:    [ 1 . 2 . . ]    [ 0 . . 1 2 . . ]    [ 1 . . 1 1 . . ]
  17:    [ . 1 2 . . ]    [ . 0 . 1 2 . . ]    [ . 1 . 1 1 . . ]
  18:    [ . 2 1 . . ]    [ . 0 1 . 2 . . ]    [ . 1 1 . 1 . . ]
  19:    [ 1 1 1 . . ]    [ 0 . 1 . 2 . . ]    [ 1 . 1 . 1 . . ]
  20:    [ 2 . 1 . . ]    [ 0 1 . . 2 . . ]    [ 1 1 . . 1 . . ]
  21:    [ 3 . . . . ]    [ 0 1 2 . . . . ]    [ 1 1 1 . . . . ]
  22:    [ 2 1 . . . ]    [ 0 1 . 2 . . . ]    [ 1 1 . 1 . . . ]
  23:    [ 1 2 . . . ]    [ 0 . 1 2 . . . ]    [ 1 . 1 1 . . . ]
  24:    [ . 3 . . . ]    [ . 0 1 2 . . . ]    [ . 1 1 1 . . . ]
  25:    [ . 2 . 1 . ]    [ . 0 1 . . 2 . ]    [ . 1 1 . . 1 . ]
  26:    [ 1 1 . 1 . ]    [ 0 . 1 . . 2 . ]    [ 1 . 1 . . 1 . ]
  27:    [ 2 . . 1 . ]    [ 0 1 . . . 2 . ]    [ 1 1 . . . 1 . ]
  28:    [ 1 . 1 1 . ]    [ 0 . . 1 . 2 . ]    [ 1 . . 1 . 1 . ]
  29:    [ . 1 1 1 . ]    [ . 0 . 1 . 2 . ]    [ . 1 . 1 . 1 . ]
  30:    [ . . 2 1 . ]    [ . . 0 1 . 2 . ]    [ . . 1 1 . 1 . ]
  31:    [ . . 1 2 . ]    [ . . 0 . 1 2 . ]    [ . . 1 . 1 1 . ]
  32:    [ 1 . . 2 . ]    [ 0 . . . 1 2 . ]    [ 1 . . . 1 1 . ]
  33:    [ . 1 . 2 . ]    [ . 0 . . 1 2 . ]    [ . 1 . . 1 1 . ]
  34:    [ . . . 3 . ]    [ . . . 0 1 2 . ]    [ . . . 1 1 1 . ]
  #= 35
