Description

Submission
typedef long long ll; class Solution { public: bool isPerfectSquare(int num) { if(num == 1) return true; for(ll left = 1, right = num; left <= right; ) { if(left == right) { if(left * left == num) return true; return false; } ll mid = (left + right) / 2; ll s = mid * mid; if(s == num) return true; if(s < num) { left = mid + 1; } if(s > num) { right = mid - 1; } } return false; } };
