Programming Challenges 16-16
Programming Challenges 16-16
6 Combinatorics 129
6.1 Basic Counting Techniques . . . . . . . . . . . . . . . . . . . . . . . . 129
6.2 Recurrence Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.3 Binomial Coefficients . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
6.4 Other Counting Sequences . . . . . . . . . . . . . . . . . . . . . . . . 133
6.5 Recursion and Induction . . . . . . . . . . . . . . . . . . . . . . . . . 135
6.6 Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.6.1 How Many Fibs? . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.6.2 How Many Pieces of Land? . . . . . . . . . . . . . . . . . . . 138
6.6.3 Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
6.6.4 Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
6.6.5 Complete Tree Labeling . . . . . . . . . . . . . . . . . . . . . 141
6.6.6 The Priest Mathematician . . . . . . . . . . . . . . . . . . . . 142
6.6.7 Self-describing Sequence . . . . . . . . . . . . . . . . . . . . . 144
6.6.8 Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
6.7 Hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
6.8 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146