题解 | #立方根#
立方根
https://www.nowcoder.com/practice/ada3edb4700143f4917d3e631ad2481a
class Solution {
public:
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param n int整型
* @return int整型
*/
int cuberoot(int n) {
// write code here
if(n == 1){
return 1;
}
int l = 1;
int r = n;
while(l <= r){
int mid = (l + r) / 2;
int m = n / mid;
m /= mid;
int m1 = n / (mid+1);
m1 /= mid + 1;
if(mid <= m && (mid+1) > m1) {
return mid;
}
if(mid > m){
r = mid - 1;
}
if(mid < m){
l = mid + 1;
}
}
return -1;
}
};