The Valid Perfect Square solutions are below.
15 Jun 2024•Easy•C++ / Python / TypeScript
Valid Perfect Square
C++, Python and TypeScript solutions for Valid Perfect Square.
Solution files
Python•valid-perfect-square/synced-solution.py
def isPerfectSquare(num):
if num < 1:
return False
left, right = 1, num
while left <= right:
mid = (left + right) // 2
square = mid * mid
if square == num:
return True
elif square < num:
left = mid + 1
else:
right = mid - 1
return False
C++•valid-perfect-square/synced-solution.cpp
class Solution {
public:
bool isPerfectSquare(int num) {
if (num < 1) return false;
long left = 1, right = num;
while (left <= right) {
long mid = (left + right) / 2;
long square = mid * mid;
if (square == num) {
return true;
} else if (square < num) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return false;
}
};
TypeScript•valid-perfect-square/synced-solution.ts
function isPerfectSquare(num: number): boolean {
if (num < 1) return false;
let left = 1, right = num;
while (left <= right) {
const mid = Math.floor((left + right) / 2);
const square = mid * mid;
if (square === num) {
return true;
} else if (square < num) {
left = mid + 1;
} else {
right = mid - 1;
}
}
return false;
}