蓝桥杯——四数平方(2016JavaB第7题)
四数平方(16JavaB7)
四平方和定理,又称为拉格朗日定理:
每个正整数都可以表示为至多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,d 为联合主键升序排列,最后输出第一个表示法
程序输入为一个正整数N (N<5000000)
要求输出4个非负整数,按从小到大排序,中间用空格分开
例如,输入:
5
则程序应该输出:
0 0 1 2
再例如,输入:
12
则程序应该输出:
0 2 2 2
再例如,输入:
773535
则程序应该输出:
1 1 267 838
资源约定:
峰值内存消耗(含虚拟机)< 256M
CPU消耗< 3000ms
请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。
所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
注意:不要使用package语句。不要使用jdk1.7及以上版本的特性。
注意:主类的名字必须是:Main,否则按无效代码处理。
package bb;
import java.util.Scanner;
public class 四数平方 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
// long startTime = System.currentTimeMillis();
int maxn = (int) Math.sqrt(n);
boolean flag = true;
for (int a = 0; a <= maxn && flag; ++a) {
for (int b = a; b <= maxn && flag; ++b) {
for (int c = b; c <= maxn && flag; ++c) {
int d = (int) Math.sqrt(n - a * a - b * b - c * c);
if (n == a * a + b * b + c * c + d * d) {
System.out.println(a + " " + b + " " + c + " " + d);
flag = false;
}
}
}
}
sc.close();
// long endTime = System.currentTimeMillis();
// System.out.println("时间:" + (endTime - startTime));
}
}
蓝桥杯——四数平方(2016JavaB第7题)的更多相关文章
- 算法笔记_216:第六届蓝桥杯软件类校赛部分真题(Java语言C组)
目录 1 题目一 2 题目二 3 题目三 4 题目四 5 题目五 前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 题目一 二项式的系数规律,我国数学家很早就发现了. 如[图1.png],我国南宋数学 ...
- 算法笔记_215:第六届蓝桥杯软件类校赛部分真题(Java语言B组)
目录 1 题目一 2 题目二 3 题目三 前言:以下代码仅供参考,若有错误欢迎指正哦~ 1 题目一 java中提供了对正则表达式的支持. 有的时候,恰当地使用正则,可以让我们的工作事半功倍! 如下代码 ...
- 第六届蓝桥杯JavaB组国(决)赛真题
解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.分机号 X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位.比如: 751,520, ...
- 第六届蓝桥杯JavaA组国(决)赛真题
解题代码部分来自网友,如果有不对的地方,欢迎各位大佬评论 题目1.胡同门牌号 小明家住在一条胡同里.胡同里的门牌号都是连续的正整数,由于历史原因,最小的号码并不是从1开始排的. 有一天小明突然发现了有 ...
- 蓝桥杯如何训练?(附VIP题库)
https://www.dotcpp.com/ 给大家介绍下蓝桥杯,是近几年可以说国内名气最大的程序设计类比赛了 相比国际赛事ACM,蓝桥杯入门简单.中文答题.拿奖率高,更适合国内大众化参加,近几年不 ...
- 蓝桥杯——复数幂 (2018JavaAB组第3题)
18年Java蓝桥杯A组第3题和B组是一样的. 第三题往往比较难. 复数幂 (18JavaAB3) (A.B两卷第三题一样) 设i为虚数单位.对于任意正整数n,(2+3i)^n 的实部和虚部都是整数. ...
- 蓝桥杯-四平方和-java
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...
- Java实现蓝桥杯快乐数
[问题描述] 判断一个正整数是否是快乐数字? 如果一个数字能够通过有限次快乐变换成为1,则是快乐数字. 快乐变换是对一个数字的每一位的平方数求和. 例如: 对于68 68 => 62+82= 1 ...
- Java实现第十届蓝桥杯特别数的和
试题 F: 特别数的和 时间限制: 1.0s 内存限制: 512.0MB 本题总分:15 分 [问题描述] 小明对数位中含有 2.0.1.9 的数字很感兴趣(不包括前导 0),在 1 到 40 中这样 ...
随机推荐
- Disruptor 使用简介
[开发总结]Disruptor 使用简介 在极客时间看到王宝令老师关于 Disruptor 的一篇文章,觉得很有意思.看完之后又在网上找到一些其他关于Disruptor 的资料看了一下. 现在写篇文章 ...
- webpack-从零搭建vuecli环境
模块化思想 // 1最早期就只是html和css处理网页 // 2发明一种语言来操作html和css js // 3早期只是在html文件里直接在script标签里写一些脚本代码 // 4随着Ajax ...
- 【事件中心 Azure Event Hub】Event Hub日志种发现的错误信息解读
问题描述 使用Event Hub消费事件时,出现的各种客户端错误的解读.(再后期遇见新的错误信息,会持续添加进此说明) 一:再Linux中运行Event Hub消费端程序,出现Too many ope ...
- 致萌新与不会用 NOI Linux 的 OIer
全文绝大部分转载自:这篇好文章啊. 目录 1:GUIDE 2:Gedit 原文 打开 编译运行 3.Vim 3-1:这东西咋开啊 3-2:这东西咋用啊 4.编译与运行 5.调试 6.CSP竞赛中编写代 ...
- 7. 组合你的UI
1. UI布局关键概念 一个组合应用UI的根节点被称作Shell,一般只有一个Shell.Shell作为应用的主页,包含一个或者多个域.域是内容占位符,可以包含一个或者多个View.有很多控件可以作为 ...
- Python优点与缺点
优点 简单 -- Python 是一种代表简单主义思想的语言.阅读一个良好的 Python 程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python 的这种伪代码本质是它最大的优点之一.它 ...
- 探索 .Net Core 的 SourceLink
介绍 Source Link是一组软件包和一个规范, 它将一些元数据添加到PDB文件,以将本地文件重新映射到GitHub上的文件,因此Visual Studio可以在这需要时下载文件, 该项目的目的是 ...
- Socket shutdown close简要分析
shutdown 系统调用关闭连接的读数据通道 写数据通道 或者 读写数据通道: 关闭读通道:丢弃socket fd 读数据以及调用shutdown 后到达的数据: 关闭写通道:不同协议处理不同:t ...
- linux文本模式和文本替换功能
linux文本有:正常模式,编辑模式,可视化模式,命令模式. 正常模式进入编辑模式下的快捷键: i --光标当前位置输入 a --光标位置后输入(append) I --行首输入 A --行尾输入 ...
- Collectiont和Collections的区别
Collectiont 和 Collections 的区别 Collection: 是Java提供的集合接口 存储一组不唯一,无序的对象 有两个子接口 List 和 Set Collections: ...