牛客求平方根
题目
实现函数 int sqrt(int x).
计算并返回x的平方根(向下取整)
输入输出格式
输入
2
返回值
1
思路
题目吧这道题目划给二分题型,但是简单的直接使用二分求解感觉太捞了,经过简单的思考我发现,可以直接使用等差数列求和的方式来做,也就是反向使用等差数列求和公式
coding
class Solution {
public:
/**
*
* @param x int整型
* @return int整型
*/
int sqrt(int x) {
int i = 1;
int res = 0;
while(x >=0){
x -= i;
++res;
i += 2;
}
return res-1;// write code here
}
};