Actually, no it isn't like a bin-packing problem. It's like
the sphere-packing problem. It is unbounded since he specifically
asked for the smallest container. I'm pretty sure that is
a rather bit nastier than bin-packing, since the only way to
find the answer is to run the bin-packing work on a huge
series of various container sizes. As I recall, that was
what made this such a nasty problem, there isn't a specific
strategy for finding the "best" answer, just a good strategy
for finding a "fair" answer for a single facet of the problem.
OTOH, mentioning Sedgewick's book is good enough for a
++ in my book, anyday =) And you are correct in that refactoring
the problem can surely help make it solvable.
$you = new YOU;
honk() if $you->love(perl)