蓝桥杯刷题-四平方和

四平方和

代码:

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
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
geovindu5 分钟前
python: Generators Pattern
开发语言·python·设计模式·生成器模式
没有不重的名么6 分钟前
spyder使用教程
开发语言·python
阿正的梦工坊7 分钟前
【Rust】06-函数、控制流与模块组织
开发语言·算法·rust
Wonderful U7 分钟前
Python+Django实战|线上问卷与投票调研系统:自定义题型、问卷发布、链接分享、答卷收集、数据可视化、报表导出
python·信息可视化·django
阿正的梦工坊13 分钟前
【Rust】16-async/await、Future 与执行器模型
网络·算法·rust
Cloud_Shy61816 分钟前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 36 - 39)
开发语言·人工智能·笔记·python
阿正的梦工坊16 分钟前
【Rust】11-Rust 所有权模型的编译期推理机制
开发语言·算法·rust
zmzb010317 分钟前
Python课后习题训练记录Day128
开发语言·python
AIFQuant18 分钟前
全球行情自动更新、多品种展示、性能优化实战指南
python·性能优化·金融·node.js·restful
风筝在晴天搁浅20 分钟前
LeetCode CodeTop 88.合并两个有序数组
算法·leetcode·职场和发展