Solution: Let T(N) be the time to run pick on a list of N items. Then

T(0) => c; 
T(N+1) => 2*T(N) + d; 

In other words, adding one more item approximately doubles the solution time. The solution thus has the bound

T(N) e O(2N)

i.e. the algorithm is exponential. We could see this coming, since there are 2N subsets of N items and the method we used tries each possible subset.

Note: Many people presented what they called O(N2) time solutions, or better. It is not likely that any of these work.