不能使用系统,那就二分查找。
const val = parseFloat(readline());
function bs(v) {
const sign = v >= 0 ? 1 : -1;
v = Math.abs(v);
let left = 0,
right = Math.max(v, 1);
let mid;
while (right - left > 1e-5) {
mid = (right + left) / 2;
if (v - mid * mid * mid > 0) {
left = mid;
} else {
right = mid;
}
}
return sign * mid;
}
const rv =bs(val).toFixed(1);
console.log(rv);
数据不大 也可以暴力



京公网安备 11010502036488号