//浮点数二分,正常写就行,不用考虑死循环问题import java.util.Scanner;public class Main{public static void main(String[] args) {Scanner sc = new Scanner(System.in);Double n = sc.nextDouble();double l = -100,r = 100;//数据范围是100000,开了三次方后不会超过100//小知识点:保留几位小数,就要多开两位//比如题目样例保留了六位小数,那么while里的条件就用1e-8while(r - l > 1e-8){//这里不要用右移double mid = (l + r) / 2;if(Math.pow(mid,3) >= n ) r = mid;else l = mid;}System.out.printf("%.6f",r);}
}
学有余力的朋友可以看整数二分