NC412. 平方和
描述
给定一个正整数 c ,请问是否存在正整数 a , b 满足示例1
输入:
5
输出:
true
说明:
2^2+1^2=5示例2
输入:
25
输出:
true
说明:
4^2+3^2=25示例3
输入:
24
输出:
false
C++ 解法, 执行用时: 3ms, 内存消耗: 396KB, 提交时间: 2022-08-06
class Solution { public: bool square(int c) { if (c == 1) { return false; } int a = sqrt(c / 2); for (int i = 1; i <= a; i++) { int b = sqrt(c - i * i); if (b * b + i * i == c) { return true; } } return false; } };
C++ 解法, 执行用时: 3ms, 内存消耗: 396KB, 提交时间: 2022-06-06
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param c int整型 * @return bool布尔型 */ bool square(int c) { // write code here if (c == 1) { return false; } int maxVal = sqrt(c/2); for (int i=1;i<=maxVal;i++) { int b = sqrt(c-i*i); if (b*b + i*i == c) { return true; } } return false; } };
C++ 解法, 执行用时: 3ms, 内存消耗: 404KB, 提交时间: 2022-07-20
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param c int整型 * @return bool布尔型 */ bool square(int c) { // write code here int nSqrt = sqrt(c); int nA = 1; int nB = 0; for (; nA <= nSqrt; nA++) { nB = sqrt(c - nA * nA); if (nB * nB + nA * nA == c && nB > 0) { return true; } } return false; } };
C++ 解法, 执行用时: 3ms, 内存消耗: 404KB, 提交时间: 2022-07-09
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param c int整型 * @return bool布尔型 */ bool square(int c) { // write code herei int res; for(int i=1;i<sqrt(c);i++){ res=c-i*i; int j=sqrt(res); if(j*j==res) return true; } return false; } };
C++ 解法, 执行用时: 3ms, 内存消耗: 404KB, 提交时间: 2022-05-18
class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param c int整型 * @return bool布尔型 */ bool square(int c) { // write code here for(int i = 1; i < sqrt(c);i++){ int ye = c - i*i; int k = sqrt(ye); if(k*k == ye) return true; } return false; } };