Rabbits and Recurrence Relations

A sequence is an ordered collection of objects (usually numbers), which are allowed to repeat.
Sequences can be finite or infinite. Two examples are the finite sequence (`π`,
`–√2`, `0`, `π`) and the infinite sequence of odd numbers
(1, 3, 5, 7, 9, …). We use the notation `a _{n}` to represent the

A recurrence relation is a way of defining the terms of a sequence with respect to the values
of previous terms. In the case of Fibonacci's rabbits from the introduction, any given month
will contain the rabbits that were alive the previous month, plus any new offspring. A key
observation is that the number of offspring in any month is equal to the number of rabbits
that were alive two months prior. As a result, if F_{n} represents the number of rabbit pairs
alive after the `n ^{th}` month, then we obtain the Fibonacci sequence having
terms F

When finding the `n ^{th}` term of a sequence defined by a recurrence relation,
we can simply use the recurrence relation to generate terms for progressively larger values of

Given: Positive integers n ≤ 40 and k ≤ 5.

Return: The total number of rabbit pairs that will be present after n months, if we begin with 1 pair and in each generation, every pair of reproduction-age rabbits produces a litter of k rabbit pairs (instead of only 1 pair).