Leetcode_sqrtx

来源:互联网 发布:焦大seo视频下载 编辑:程序博客网 时间:2024/06/16 11:30

地址:http://oj.leetcode.com/problems/sqrtx/

Implement int sqrt(int x).

Compute and return the square root of x.

思路:主要是处理2147483647这个case吧。同时也要注意上溢出的问题,不然也会TLE。

两个参考代码,一个152ms,一个96ms

//152msclass Solution {public:    int sqrt(int x) {        if(x<=1)            return x;        int i = 2;        for(; i*i<=x &&i*i>0; ++i)        {            if((i+100)*(i+100)>0 &&(i+100)*(i+100)<x)            {                i+=100;            }        }        return i-1;    }};//96msclass Solution {public:    int sqrt(int x) {        if(x<=1)            return x;        int i = 2;        for(; i*i<=x &&i*i>0; ++i)        {            if((i+1000)*(i+1000)>0 &&(i+1000)*(i+1000)<x)            {                i+=1000;            }        }        return i-1;    }};


0 0
原创粉丝点击