Python Programs - using recursion - functions on lists (flattening, sorting) - Nested lists - Sherlock & Cost Problem