We can adapt Sjoerd's solution to the question, http://mathematica.stackexchange.com/questions/40939/table-find-index-of-the-maximum-element. Other methods may be found here: http://mathematica.stackexchange.com/questions/40231/list-manipulation-position-max-value-combination. tt1 = Flatten[ Table[Thread@{x, y, z /. Solve[z^2 == x^2 y - z, z, Method -> Reduce]}, {x, 0, 5, 1}, {y, 0, 5, 1}], 2]; Then this yields `{x, y, max}`: tt1[[Ordering[tt1[[All, 3]]] // Last]] (* {5, 5, 1/2 (-1 + Sqrt[501])} *)