790. 数的三次方根 - AcWing题库
Solution
Java
import java.util.Scanner;
public class Main {
private static double eps = 1e-8;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double val = scanner.nextDouble();
double left = -Double.MAX_VALUE;
double right = Double.MAX_VALUE;
double cubic = binarySearch(left, right, val);
System.out.printf("%.6f", cubic);
}
private static double binarySearch(double left, double right, double target) {
while (right - left > eps) {
double mid = (left + right) / 2;
if (mid * mid * mid >= target) {
right = mid;
} else {
left = mid;
}
}
return left;
}
}