您好,登錄后才能下訂單哦!
這篇文章主要介紹了LeetCode如何求平方數之和,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
1,問題簡述
給定一個非負整數 c ,你要判斷是否存在兩個整數 a 和 b,使得 a2 + b2 = c 。
2,示例
示例 1:
輸入:c = 5
輸出:true
解釋:1 * 1 + 2 * 2 = 5
示例 2:
輸入:c = 3
輸出:false
示例 3:
輸入:c = 4
輸出:true
示例 4:
輸入:c = 2
輸出:true
示例 5:
輸入:c = 1
輸出:true
提示:
0 <= c <= 231 - 1
3,題解思路
雙指針的使用
4,題解程序
public class JudgeSquareSumTest {
public static void main(String[] args) {
int c=3;
boolean judgeSquareSum = judgeSquareSum(c);
System.out.println("judgeSquareSum = " + judgeSquareSum);
}
public static boolean judgeSquareSum(int c){
if (c<0){
return false;
}
int i=0;
int j= (int) Math.sqrt(c);
while(i<=j){
int powSum = i * i + j * j;
if (powSum==c){
return true;
}else if (powSum>c){
j--;
}else{
i++;
}
}
return false;
}
}
5,題解程序圖片版
感謝你能夠認真閱讀完這篇文章,希望小編分享的“LeetCode如何求平方數之和”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。