题目:
Given a non-negative integer c
, your task is to decide whether there're two integers a
and b
such that a2 + b2 = c.
题目:
判断一个数是否为两个数的平方和。
Example 1:
Input: 5 Output: True Explanation: 1 * 1 + 2 * 2 = 5
Example 2:
Input: 3 Output: False
代码:
package Leetcode_Github; public class TwoPoints_SumOfSquareNumbers_633_1031 { public boolean JudgeSquareSum(int c){ if (c < 0) { return false; } int i = 0; int j = (int) Math.sqrt(c); while (i <= j) { int sum = i * i + j * j; if (sum == c) { return true; } else if (sum > c) { j--; } else i++; } return false; } 测试函数: public static void main(String[] args) { TwoPoints_SumOfSquareNumbers_633_1031 test = new TwoPoints_SumOfSquareNumbers_633_1031(); boolean result = test.JudgeSquareSum(4); System.out.println(result); } }