用按值二分在答案范围内搜索。记左右边界为 lll 与 rrr。当 x≥2x \ge 2x≥2 时有
因此可取初始区间 [l=1,r=⌊x2⌋+1][l=1,r=\left\lfloor \dfrac{x}{2} \right\rfloor+1][l=1,r=⌊2x⌋+1];当 x<2x<2x<2 时直接返回 xxx。
在循环中取中点
实现函数 int mysqrt(int x) 。
计算并返回 xxx 的平方根(向下取整)
数据范围:0<=x<231−10<=x<2^{31}-10<=x<231−1
本题属于以下题库,请选择所需题库进行购买
ScanQRCodePrompt
GoToPasswordLoginPrompt