蓝桥杯刷题-四平方和

四平方和

代码:

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
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
江上鹤.148几秒前
Day 28 复习日
人工智能·python·机器学习
Hello.Reader几秒前
从 0 到 1 跑通第一个 Flink ML 示例
大数据·python·flink
DFT计算杂谈2 分钟前
免注册下载各个版本Anaconda3/Miniconda3
python
lzh200409192 分钟前
【数据结构】二叉搜索树
数据结构·算法
c#上位机11 分钟前
halcon图像膨胀—dilation1
图像处理·算法·c#·halcon
RickyWasYoung12 分钟前
【聚类算法】高维数据的聚类
算法·数据挖掘·聚类
古月居GYH18 分钟前
数据结构算法——排序算法解析
数据结构·算法·排序算法
虹科网络安全23 分钟前
艾体宝干货 | Redis Python 开发系列#6 缓存、分布式锁与队列架构
redis·python·缓存
猎人everest23 分钟前
Django Rest Framework (DRF) 核心知识体系梳理与深度讲解
后端·python·django
卿雪24 分钟前
缓存异常:缓存击穿、缓存穿透、缓存雪崩 及其解决方案
java·数据库·redis·python·mysql·缓存·golang