A finite steepest-ascent algorithm for maximizing piecewise-linear concave functions