首页 > 编程语言 >算法刷题-尼科彻斯定理-JAVA

算法刷题-尼科彻斯定理-JAVA

时间:2023-02-19 21:37:08浏览次数:40  
标签:斯定理 arr JAVA int 31 System a1 算法 刷题

0x00 引言

为获取一个良好的算法思维,以及不再成为一个脚本小子,争取每天一道算法题,培养自己的逻辑思维,温顾各类型语言语法知识。

题解只写自己理解的解法,其他解法不再增加。题目与解析均在代码里面。

0x01 难度等级

简单

0x02 代码

package 简单;

import java.util.Scanner;

/*
*
*
*
描述
验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。

例如:

1^3=1

2^3=3+5

3^3=7+9+11

4^3=13+15+17+19

输入一个正整数m(m≤100),将m的立方写成m个连续奇数之和的形式输出。
数据范围:
1
≤
�
≤
100

1≤m≤100

输入描述:
输入一个int整数

输出描述:
输出分解后的string
*
示例1
输入:
6
*
输出:
m^3=m^a1+m*(m-1)  2与d(公差2约掉了)
6^3=31+33+35+37+39+41
*
* */
public class 尼科斯彻定理 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int m = sc.nextInt();
        double a1 = 0;
        double x = Math.pow(m, 2);//m^3=m^a1+m*(m-1)
        a1 = x - m + 1;//36-6+1   a1=m^2-m+1
        int b = 0;
        int[] arr = new int[m];
//        System.out.println(a1);
        for (int i = 0; i < m; i++) {
            b = (int) a1;//31
            b += 2 * i;//31
            arr[i] = b;//31
            if (i == m - 1) {//5
                System.out.print(arr[i]);//41就不打印“+号”
            } else {
                System.out.print(arr[i] + "+");
            }

        }
    }
}

 

0x03 算法思想

考查公差d为2的等差数列的通项求和公式:m设为项数,先计算处a1,再计算出每一项,一共只有m项。

m^3=m^a1+m*(m-1)

0x04 运行结果

标签:斯定理,arr,JAVA,int,31,System,a1,算法,刷题
From: https://www.cnblogs.com/cute-puli/p/17135636.html

相关文章

  • Java的数据类型
                                               {整数类型       ......
  • Java 获取 List 中元素的所有子集
    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/17135599.html MavenDependency<dependency><groupId>com.google.guava</groupId><artifactId>......
  • 算法刷题-字符串最后一个单词的长度-JAVA
    0x00引言为获取一个良好的算法思维,以及不再成为一个脚本小子,争取每天一道算法题,培养自己的逻辑思维,温顾各类型语言语法知识。题解只写自己理解的解法,其他解法不再增加。......
  • Java开学考(用户注册与登录部分)
    .java文件:packagexuanke;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.S......
  • 外部排序【java实现】
    外部排序什么是外部排序?外部排序是一种把大量无序的数据,按一定的顺序排序的算法。它是一种非常适合处理海量数据的算法,其原理主要有以下几点:首先,将所有要排序的数据分......
  • Java Web(七)Request&Response
    Request&ResponseRequest:获取请求数据Response:设置响应数据一.Request对象1.Request继承体系Tomcat需要解析请求数据,封装为requestx对象并且创建requestx对象传递到servic......
  • 【JavaScript】17_debug,立即执行函数 与 严格模式
    14、debug<script>//debugger//在代码中打了一个断点console.log(a)//2vara=1console.log(a)//1fu......
  • 【JavaScript】18_面向对象,类与属性
    1、面向对象面向对象编程(OOP)程序是干嘛的?程序就是对现实世界的抽象(照片就是对人的抽象)对象是干嘛的?一个事物抽象到程序中后就变成了对象在程序的世界中,一切皆对象面向对象......
  • 零钱通小练习-java
    零钱通小练习面对过程!!!!packagecom.zhou.java.Demo03;​importjava.text.SimpleDateFormat;importjava.util.Date;importjava.util.Scanner;​publicclassText{ ......
  • 算法刷题-无重复字符的最长子串(哈希表、字符串)、数字 1 的个数(递归、数学)、对称二
    无重复字符的最长子串(哈希表、字符串)给定一个字符串,请你找出其中不含有重复字符的**最长子串**的长度。示例1:输入:s="abcabcbb"输出:3解释:因为无重复字符......