zoukankan      html  css  js  c++  java
  • 四平方和(程序设计)

    四平方和定理,又称为拉格朗日定理:

    每个正整数都可以表示为至多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

    请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。

    代码:

    import java.util.Scanner;

    public class Student {
    public static void main(String[] args) {
    int n=new Scanner(System.in).nextInt();
    double m = Math.sqrt(n);

    loop:for (int i = 0; i < m; i++) {
    for (int j = 0; j < m; j++) {
    for (int j2 = 0; j2 < m; j2++) {
    for (int k = 0; k < m; k++) {
    double s = i*i+j*j+j2*j2+k*k;
    if(s==n){
    System.out.println(i);
    System.out.println(j);
    System.out.println(j2);
    System.out.println(k);
    break loop;
    }
    }
    }
    }
    }
    }
    }

  • 相关阅读:
    BAT 批处理脚本教程
    javascript定时器
    使用命令行打开文件夹并显示
    用cmd加密文件夹
    烟波钓叟歌概述讲解
    奇门遁甲的起源
    八卦基本知识
    word2vec和word embedding有什么区别?
    Privoxy shadowscocks代理
    Elasticsearch源码分析—线程池(十一) ——就是从队列里处理请求
  • 原文地址:https://www.cnblogs.com/-rainbow-/p/7749313.html
Copyright © 2011-2022 走看看