是否有两数平方之和等于C
sqrt()函数是我们经常使用的一个函数。sqrt() 用来求给定值的平方根
floor(x),也写做Floor(x),其功能是“向下取整”,或者说“向下舍入”,即取不大于x的最大整数
floor(3.14) = 3.0
floor(9.999999) = 9.0
floor(-3.14) = -4.0
floor(-9.999999) = -1
可以假设a<=b,初始值a=0,b等于根号c
1.A方和B方之和为C 返回true
2.A方和B方之和大于C则b–
3.A方和B方之和小于C则a++
当a=b查找结束,此时如果没找到,则返回false
func judgeSquareSum(c int) bool {
left, right := 0, int(math.Sqrt(float64(c)))
for left <= right {
sum := left*left + right*right
if sum == c {
return true
} else if sum > c {
right--
} else {
left++
}
}
return false
}