Any ideas or references on how to approach this problem? Every element in a set has a parameter $p\_i \geq 0$ and $c\_i \geq 0$. The objective is to find a subset which maximizes


$\prod\_{i \in S} p\_i + \sum\_{i \in S} c\_i$


I tried to prove complexity results but was unsuccessful. My guess is that it is NP-Hard, but I cannot find a reduction from any known problem. 
A greedy heuristic which sequentially adds elements which give the highest increase works fine, but can give arbitrarily bad results.



Combinatorial Problem
It is actually an easy one. Suppose that you were allowed to take any part of each item adding $tc\_i$ and multiplying by $p\_i^t$ for any $t\in[0,1]$. First, you should take everything that has $p\_i\ge 1$ (because it never hurts). Then you have to maximize $C\prod\_j e^{-b\_j t\_j}+\sum\_j t\_j c\_j$ where $b\_j=-\log p\_j>0$. Now the points $(\sum t\_j b\_j, \sum t\_j c\_j)$ form a convex polygon and you know its boundary (half of it comes from arranging $c\_j/b\_j$ in the decreasing order and the other half from arranging them in the increasing order). Moreover, the functional $(x,y)\mapsto Ce^{-x}+y$ is convex, so its maximum is attained at some vertex on the boundary (which correspond to some subsets) and you are done in $n\log n$ time most of which is spent on sorting. 


Now, if the task were to *minimize* that quantity, that would be worse than the knapsack packing problem. 


