Algorithm Design By Dynamic Programming In Python