尼科彻斯定理

简介: 1.题目概述2.题解思路分析具体实现

1.题目概述

验证尼科彻斯定理,即:任何一个整数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个连续奇数之和的形式输出。


输入描述:


输入一个int整数


输出描述:


输出分解后的string


示例


输入:6

输出:31+33+35+37+39+41


2.题解

思路分析

本题思路与高中的等差数列求解思路相同,题目描述为:任何一个整数m的立方都可以写成m个连续奇数之和,翻译为高中数学题目,即,首相a1,公差d2的等差数列,数列前m项和Sn为m3,分别求出等差数列前m项的值。


因此,只需根据等差数列求和公式求出a1的值,则可求出该m个连续的奇数m3


等差数列公式:Sn=na1+n(n-1)d/2


将数据带入公式:m3=ma1+m(m-1)2/2


则可得:a1=m3-m(m-1)/m


具体实现

importjava.util.Scanner;
publicclassMain {
publicstaticvoidmain(String[] args) {
Scannerin=newScanner(System.in);
intm=in.nextInt();
//计算和intsn= (int)Math.pow(m,3);
//计算首项inta1= (sn-m*(m-1)) /m;
Strings="";
s+=a1;
for(inti=1; i<m; i++){
s+="+";
s+= (a1+(i*2));
        }
System.out.println(s);
    }
}


注:题目出自牛客网,链接如下:


https://www.nowcoder.com/practice/dbace3a5b3c4480e86ee3277f3fe1e85?tpId=37&&tqId=21299&rp=1&ru=/ta/huawei&qru=/ta/huawei/question-ranking

目录
相关文章
|
4月前
|
机器学习/深度学习 并行计算 定位技术
NYOJ22-吝啬的国度
NYOJ22-吝啬的国度
24 0
|
4月前
|
C语言
每天一道C语言编程练习(5):尼科彻斯定理
每天一道C语言编程练习(5):尼科彻斯定理
32 0
|
4月前
|
Java
微生物增殖(蓝桥杯)
微生物增殖(蓝桥杯)
|
4月前
|
算法 测试技术 C#
【数学归纳法 反证法】菲蜀定理
【数学归纳法 反证法】菲蜀定理
|
4月前
洛古 P1002 过河卒
洛古 P1002 过河卒
1314:【例3.6】过河卒(Noip2002)
1314:【例3.6】过河卒(Noip2002)
130 0
|
11月前
|
算法
华为机试HJ76:尼科彻斯定理
华为机试HJ76:尼科彻斯定理
HJ76--尼科彻斯定理
HJ76--尼科彻斯定理
94 0
尼科彻斯定理
尼科彻斯定理
50 0
LeetCode每日一题——417. 太平洋大西洋水流问题
有一个 m × n 的矩形岛屿,与 太平洋 和 大西洋 相邻。 “太平洋” 处于大陆的左边界和上边界,而 “大西洋” 处于大陆的右边界和下边界。
97 0
LeetCode每日一题——417. 太平洋大西洋水流问题