367.Valid Perfect Square

本题要求给出一个数字是否是一个完全平方数,是easy难度的题目,但是有种防止越界的方式想要记录一下:r = (r + x / r) / 2.

class Solution {
public:
    bool isPerfectSquare(int x) {
        long r = x;
        while(r * r > x){
            r = (r + x / r) / 2;
        }
        return r * r == x;
    }
};

你可能感兴趣的:(367.Valid Perfect Square)