A colleague referred me to an interesting coding brainteaser. The problem statement was (paraphrased) roughly as follows:
Given a list of integers, produce an output list which consists of the product of every integer in the input list except the one at the corresponding index.
For example, given the list [1, 2, 3, 4, 5], the output should be [120, 60, 40, 30, 24].
As a followup, what if you can't use division?