Credit Suisse coding challenge