Skip to content

367.有效的完全平方数 ​

367.有效的完全平方数

就是一个最简单的二分查找,找有没有整数的根号解。

开根的逻辑:69

二分查找的逻辑:704

完整代码 ​

cpp
class Solution {
  public:
	bool isPerfectSquare(int num)
	{
		int l = 1, r = num, m;
		while (l <= r) {
			m = l + (r - l) / 2;
			if (static_cast<long long>(m) * m > num) {
				r = m - 1;
			}
			else if (static_cast<long long>(m) * m < num) {
				l = m + 1;
			}
			else {
				return true;
			}
		}
		return false;
	}
};