function mySqrt(n: number) {
if (n === 0 || n === 1) {
return n;
}
let start: number = 1;
let end: number = n;
while (start <= end) {
let mid = start + Math.floor((end - start) / 2);
if (mid * mid > n) {
end = mid - 1;
}
else if (mid * mid === n) {
return mid;
} else {
start = mid + 1;
}
}
return end;
}
console.log(mySqrt(240000)); // 489.897
/*
run:
489
*/