给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a 的平方加 b 的平方等于 c 。 复制代码
示例:
输入: 5 输出: True 解释: 1 * 1 + 2 * 2 = 5 输入: 3 输出: False 复制代码
思考:
这题因为 a * a + b * b = c,所以 a < 根号c,b < 根号c。 所以可以用两个变量i = 0,j = 根号c, 当 i <= j 时,计算i * i + j * j 当结果小于c则i++,否则j--, 若结果等于c则返回true。 复制代码
实现:
class Solution {
public boolean judgeSquareSum(int c) {
int i = 0;
int j = (int) Math.sqrt(c);
while (i <= j) {
int num = i * i + j * j;
if (num == c) {
return true;
}
if (num < c) {
i++;
} else {
j--;
}
}
return false;
}
}
复制代码
以上所述就是小编给大家介绍的《LeetCode每日一题:平方数之和(No.633)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
新零售:低价高效的数据赋能之路
刘润 / 中信出版集团 / 2018-9 / 65.00元
小米新零售,如何做到20倍坪效? 天猫小店,如何利用大数据助力线下零售? 盒马鲜生,为什么坚持必须用App才能买单? 名创优品,实体小店在电商冲击下,如何拥抱春天? 新零售的未来在何方?什么样的思维模式才可应对? 新零售,不是商界大佬的专用名词,它就在我们生活触手可及的各个角落——小到便利店的酸奶,大到京东商城的冰箱,都蕴含着消费者、货物、经营场所三者共同作用的经济逻......一起来看看 《新零售:低价高效的数据赋能之路》 这本书的介绍吧!