LeetCode79|平方数之和

时间:2022-07-26
本文章向大家介绍LeetCode79|平方数之和,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

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,题解程序图片版

6,总结

唠会嗑,国庆在家都还好吧,最近在老家也下起了雨,天气开始冷了,像极了冬天,大家注意保暖哈,原本回家时脑海里过了一遍假期计划,然而计划永远赶不上变化,这几年自己很少制定计划了,因为,你懂得,回家或者出去度假都是不太可能随着你的计划有条不紊的在进行着,所以计划就这样被无形之中打乱了,放假嘛,当然是休息了,晚上休息的时间也变了,下午六点左右天就黑了,吃完饭玩会儿手机就困了,与生活在闹市里绝对不同,假期就这样度过了一大半时间,再过两三天就又要出去了,这或许就是假期带给我个人的一点点想法吧。