Let P be a problem. For any instance x ∈ P, the solution is some real number f(x). Let A be a randomized algorithm for P, such that it gives a solution A(x) that lies in [1/2f(x), 2f(x)] with probability 2/3. Say the running time of A on instance x is polynomial in |x|. Design a randomized algorithm such that, on any instance x ∈ P, it gives a solution that lies in [1/2f(x), 2f(x)] with probability 1 - O(e-n), and has running time poly(|x|,n).