// output of ./demo/comb/combination-revdoor-demo.cc:
// Description:
//% Generating all combinations in minimal-change order: revolving door algorithm.

arg 1: 7 == n  [Combination (n choose k) in minimal-change order: n>=1]  default=7
arg 2: 4 == k  [(n choose k):  1<=k<=n]  default=4
  0:      { 0, 1, 2, 3 }    1111...
  1:      { 0, 1, 3, 4 }    11.11..
  2:      { 1, 2, 3, 4 }    .1111..
  3:      { 0, 2, 3, 4 }    1.111..
  4:      { 0, 1, 2, 4 }    111.1..
  5:      { 0, 1, 4, 5 }    11..11.
  6:      { 1, 2, 4, 5 }    .11.11.
  7:      { 0, 2, 4, 5 }    1.1.11.
  8:      { 2, 3, 4, 5 }    ..1111.
  9:      { 1, 3, 4, 5 }    .1.111.
 10:      { 0, 3, 4, 5 }    1..111.
 11:      { 0, 1, 3, 5 }    11.1.1.
 12:      { 1, 2, 3, 5 }    .111.1.
 13:      { 0, 2, 3, 5 }    1.11.1.
 14:      { 0, 1, 2, 5 }    111..1.
 15:      { 0, 1, 5, 6 }    11...11
 16:      { 1, 2, 5, 6 }    .11..11
 17:      { 0, 2, 5, 6 }    1.1..11
 18:      { 2, 3, 5, 6 }    ..11.11
 19:      { 1, 3, 5, 6 }    .1.1.11
 20:      { 0, 3, 5, 6 }    1..1.11
 21:      { 3, 4, 5, 6 }    ...1111
 22:      { 2, 4, 5, 6 }    ..1.111
 23:      { 1, 4, 5, 6 }    .1..111
 24:      { 0, 4, 5, 6 }    1...111
 25:      { 0, 1, 4, 6 }    11..1.1
 26:      { 1, 2, 4, 6 }    .11.1.1
 27:      { 0, 2, 4, 6 }    1.1.1.1
 28:      { 2, 3, 4, 6 }    ..111.1
 29:      { 1, 3, 4, 6 }    .1.11.1
 30:      { 0, 3, 4, 6 }    1..11.1
 31:      { 0, 1, 3, 6 }    11.1..1
 32:      { 1, 2, 3, 6 }    .111..1
 33:      { 0, 2, 3, 6 }    1.11..1
 34:      { 0, 1, 2, 6 }    111...1
binomial(7, 4)=35

