1772: 有效的完全平方数

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:49 Solved:10

Description

描述:给定一个 正整数 num ,编写一个程序,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。(不要使用任何内置的库函数,如 sqrt 。)


示例 1:输入:num = 64

输出:true


示例 2:输入:nums = 255

输出:false


因为对于任意数 n >= 4的数,必有 (n/2)^2 >= n

所以我们只需要判断区间[2, num // 2] 的数是否满足:

mid ** 2 == num 即可

这样我们可以使用二分查找提高求解的速度

Input

输入一个数num

Output

是否为完全平方数

true 或者 false

Sample Input Copy

64

Sample Output Copy

true