lintcode:x的平方根

来源:互联网 发布:无锡华云数据怎么样 编辑:程序博客网 时间:2024/04/27 14:41

x的平方根


lintcode 题目链接


class Solution {public:    /**     * @param x: An integer     * @return: The sqrt of x     */    int binary_search(long  l,long  r, long &x){        while(l<=r)        {            long mid=(l+r)>>1;            long long ans1=mid*mid;            long long ans2=(mid+1)*(mid+1);            if(ans1>x)                r=mid-1;            else if(ans1<x && ans2<=x)                 l=mid+1;            else if(ans1<=x &&ans2>x)                return mid;        }        return 0;    }    int sqrt(int x) {        // write your code here        long r=x;        if(r>3) r>>1;        return binary_search(1,r,r);    }};
0 0
原创粉丝点击