# Can there exist more than one optimal solution in a dynamic programming problem?

In any dynamic programming problem can there exist more than one optimal state ?

If so how would I enumerate all of them ?

For example: in the subset sum problem for the given set $\{-3, -2, 7, 5\}$ and target sum $0$.

There exists two ways of reaching $0$. ie. $\{\}$ = empty set as a sum of zero, or $\{-3, -2, 5\}$ = also which has a sum of $0$.

In dynamic programming how would you distinguish between these two ?