tgoop.com/yeahub_go_backend/68
Create:
Last Update:
Last Update:
#ЛитКод
Задача: 633. Sum of Square Numbers
Учитывая целое неотрицательное число c, решите, существуют ли два целых числа a и b такие, что a2 + b2 = c.
Пример:
Input: c = 5
Output: true
Проверьте, если c меньше 0, немедленно верните false, так как сумма квадратов двух целых чисел не может быть отрицательной.
Используйте два указателя a и b. Инициализируйте a на 0 и b на значение квадратного корня из c. Поиск решения: Используйте цикл для поиска a и b, таких что a^2 + b^2 == c: Если a^2 + b^2 равно c, верните true. Если a^2 + b^2 меньше c, увеличьте a на 1. Если a^2 + b^2 больше c, уменьшите b на 1.
Если цикл завершится без нахождения подходящих a и b, верните false.
package main
import (
"math"
"fmt"
)
func judgeSquareSum(c int) bool {
a := 0
b := int(math.Sqrt(float64(c)))
for a <= b {
total := a * a + b * b
if total == c {
return true
} else if total < c {
a++
} else {
b--
}
}
return false
}