This problem was asked by Uber.
Given an array of integers, return a new array such that each element at index i of the new array is the product of all the numbers in the original array except the one at i.
Input: [1, 2, 3, 4, 5]
Output: [120, 60, 40, 30, 24]
Input: [3, 2, 1]
Output: [2, 3, 6]
What if you can't use division?