蓝桥杯刷题-四平方和

四平方和

代码:

python 复制代码
from copy import deepcopy
n = int(input())
maxn = int(5e6) + 10
dic = dict()
for a in range(maxn):
    if a * a > n:
        break
    for b in range(a,maxn):
        if a * a + b * b > n:
            break
        if dic.get(a*a+b*b) is None:
            dic[a*a+b*b] = (a,b)
ans = [maxn for _ in range(4)]
for a in sorted(dic.keys()):
    b = n - a
    if a > b:
        break
    if b in dic.keys():
        tmp = list(dic[a]+dic[b])
        tmp.sort()
        for i in range(4):
            if tmp[i] != ans[i]:
                if tmp[i] < ans[i]:
                    ans = deepcopy(tmp)
                break
for i in range(3):
    print(ans[i], end = ' ')
print(ans[-1])

作者:波尔k
链接:https://www.acwing.com/activity/content/code/content/8139085/
来源:AcWing
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
念恒12306几秒前
Python(运算与操作)
python·学习
qq_349317483 分钟前
Tailwind CSS如何自定义间距数值_配置theme spacing扩展CSS边距
jvm·数据库·python
自我意识的多元宇宙5 分钟前
数据结构----插入排序
数据结构·算法·排序算法
im_AMBER5 分钟前
Leetcode 162 除了自身以外数组的乘积 | 接雨水
开发语言·javascript·数据结构·算法·leetcode
Westward-sun.7 分钟前
YOLO目标检测算法与mAP评估指标详解(附示例)
算法·yolo·目标检测
u01102251216 分钟前
HTML5多媒体资源动态替换Source标签的刷新机制
jvm·数据库·python
cpp_250117 分钟前
P1873 [COCI 2011/2012 #5] EKO / 砍树
数据结构·c++·算法·题解·二分答案·洛谷·csp
用户67570498850218 分钟前
别再用过时的地区数据了!闸北区都消失了,教你一次性搞定省市区同步更新!(附实战源码)
python
啊哦呃咦唔鱼19 分钟前
leetcodehot100-347. 前 K 个高频元素
数据结构·算法·leetcode
玛丽莲茼蒿19 分钟前
Leetcode hot100 多数元素【简单】
算法·leetcode·职场和发展