Now hotel_cost(1) will return hotel_cost(140 *1), and hotel_cost(140 *1) will return hotel_cost(140 *hotel_cost(140 *1)) and so on, until at some point (the maximum recursion depth) Python will stop hotel_cost() from calling itself.