首页 > 试题广场 >

平方和

[编程题]平方和
  • 热度指数:2755 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个正整数 c ,请问是否存在正整数 a , b 满足

数据范围:
示例1

输入

5

输出

true

说明

2^2+1^2=5  
示例2

输入

25

输出

true

说明

4^2+3^2=25  
示例3

输入

24

输出

false
class Solution:
    def square(self , c: int) -> bool:
        n = int(pow(c,0.5))
        for i in range(n,n//2,-1):
            nva = c - i**2
            if nva == 0:
                continue
            y = pow(nva,0.5)%1
            if y == 0:
                return True
        return False

发表于 2024-10-06 23:17:57 回复(0)
class Solution:
    def square(self , c: int) -> bool:
        # write code here
        s = int(c**0.5)
        for i in range(1, s+1):
            # 整数
            if int((c-i**2)**0.5) == (c-i**2)**0.5:
                return True if c != 1 else False
        return False

发表于 2022-07-08 22:45:22 回复(0)
class Solution:
    def square(self , c: int) -> bool:
        # write code here
        if c==1:
            return False
        for a in range(1,int(c**0.5)+1):
            b = c - a**2
            # 检查b是否为平方数
            if b**0.5 == int(b**0.5):
                return True
        return False

发表于 2022-04-24 09:31:44 回复(0)