Leetcode 633. 平方数之和
1. 问题描述
2. 思路
逆向双指针,左边界从0 开始,右边界从 c \sqrt{c} c 位置开始
3. 代码
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 {
left++
} else {
right--
}
}
return false
}