Solving Cubic Polynomials