Complexity and approximation, Combinatorial optimization problems and their approximability properties