Combinatorial algorithms : generation, enumeration, and search - Kreher, Donald L. (Discrete mathematics and its applications, 1998)