要求

每个正整数都可以表示为至多 4 个正整数的平方和。

如果把 0 包括进去,就正好可以表示为 4 个数的平方和。

比如:5 = 0^2 + 0^2 + 1^2 + 2^2

7 = 1^2 + 1^2 + 1^2 + 2^2

对于一个给定的正整数,可能存在多种平方和的表示法。

要求你对 4 个数排序:

0≤a≤b≤c≤d

并对所有的可能表示法按 a,b,c,da,b,c,d 为联合主键升序排列,最后输出第一个表示法。

输入描述

程序输入为一个正整数 N (N<5 ×10^6)

输出描述

要求输出 4 个非负整数,按从小到大排序,中间用空格分开

代码

from math import sqrt

import sys

n=int(input())

for a in range(0,int(sqrt(n))+1):

for b in range(a,int(sqrt(n-a**2))+1):

for c in range(b,int(sqrt(n-a**2-b**2))+1):

rest =n-a*a-b*b-c*c

d=int(sqrt(rest))

if d>=c and d*d==rest:

print(a,b,c,d)

sys.exit(0)

Python四平方和相关推荐

  1. 蓝桥杯python组——四平方和

    蓝桥杯python组--四平方和 import os import sys import math n=int(input()) sqn=int(math.sqrt(n))def f(n):for a ...

  2. python平方和计算技巧_Python算法练习题:四平方和

    四平方和的定理又称拉格朗日定理:每个正整数都可以表示至多4个正整数的平方和.如果把0包括进去,就可以表示为4个数的平方和. 比如: 5=0^2+0^2+1^2+2^2 7=1^2+1^2+1^2+2^ ...

  3. 2016年第七届蓝桥杯 - 省赛 - C/C++大学A组 - H. 四平方和

    题目 四平方和 四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 02 + 02 + 12 + 2 ...

  4. 硬核!Python 四种变量的代码对象和反汇编分析

    作者 | 大奎 整理 | 阳哥 来源丨Python数据之道 在Python基础的学习过程中,对变量和参数的理解有助于我们从更基础层面了解Python语言的运行.在这个过程中,还是有不少冷门和细节的地方 ...

  5. 蓝桥杯四平方和Java_蓝桥杯 四平方和

    题目:四平方和 看到这个题目,第一个思路就是: 枚举abcd的值,然后判断它们的平方和是不是等于N. 我们可以分析一下abcd的枚举范围: a : 0 ~ sqrt( 5000000 / 4 ) b  ...

  6. 征战蓝桥 —— 2016年第七届 —— C/C++A组第8题——四平方和

    题目 四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0^2 + 1^2 + 2^2 ...

  7. 暴力优化解法+哈希解法——2016年第七届蓝桥杯省赛b组第八题 四平方和

    Problem describe 四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0 ...

  8. java中b的平方表示_第七届蓝桥杯Java B——四平方和

    四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0^2 + 1^2 + 2^2 7 ...

  9. [蓝桥杯2016初赛]四平方和-数论+枚举

    题目描述 四平方和定理,又称为拉格朗日定理:每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0^2 + 1^2 + 2^ ...

最新文章

  1. 80x86描述符总结及解析描述符的小程序
  2. js url传值中文乱码之解决之道
  3. python global和nonlocal_3.关于作用域知识的额外补充global和nonlocal关键字
  4. composer 查看php 版本_最常用的PHP版本:PHP 7.3取代7.2
  5. java方法重载_在Python中该如何实现Java的重写与重载
  6. 82c55单片机c语言,AT89S51单片机与82C55的接口设计编程
  7. idea java gitignore,关于idea的gitignore文件编写及解决ignore文件不生效问题
  8. 例题:打印正三角形。两层for循环,难点明白行与列的关系
  9. Java .net 心得_我做英文站的心得-如何做好英文站 - 程序员日记 - 做人做技术【关注.NET和JAVA】...
  10. linux 下安装mantis
  11. LoRa远程监控系统
  12. C++实现的基于α-β剪枝算法的井字棋游戏
  13. 蚂蚁双链通:基于区块链的供应链协作网络
  14. 【复试】2017北京理工大学上机(一)----身份证校验
  15. 云通讯的下一个时代,需要的不只是AI
  16. Vivado中Testbench模板(自用)
  17. 三星android怎么获取root,三星如何获取root 三星root权限获取方法【图文教程】
  18. 蜗牛学院:23岁至30岁,这4件事最重要
  19. 嵌入式 Linux 入门 环境篇(三、开发板和 PC 的网络互通)
  20. html+js+php客服系统界面与自动回复

热门文章

  1. 【企业管理】72套初创公司创业团队股权分配方案
  2. 手机通讯录数据怎么恢复
  3. 大数据风控---互信息及Python实现
  4. JS函数式编程【译】5.3 单子 (Monad)
  5. 拿到新电脑后进行的一些配置,装软件
  6. mapper批量插入
  7. JDBC常见错误(1)——网络适配器无法连接到
  8. 三千烦恼,不如淡然一笑
  9. 嵌入式linux开发视频下载
  10. 腾讯大连无线事业部Java实习面经