程式語言 - LeetCode - CPP - 367. Valid Perfect Square



題目:


解答:

class Solution {
public:
    bool isPerfectSquare(int num) {
        long l = 1;
        long r = num;

        while (l <= r) {
            long m = l + ((r - l) >> 1);
            long long s = m * m;

            if (s == num) {
                return true;
            }
            else if (s < num) {
                l = m + 1;
            }
            else {
                r = m - 1;
            }
        }

        return false;
    }
};