Solution to a programming challenge problem originally posed by AlixPartners Consulting