【java华为机试】HJ76 尼科彻斯定理

描述

验证尼科彻斯定理,即:任何一个整数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\le m\le 100

进阶:时间复杂度:O(m) ,空间复杂度:O(1)

输入描述:

输入一个int整数

输出描述:

输出分解后的string

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while (sc.hasNextInt()) {
			int m = sc.nextInt();

			// 计算出第一个的值,作为起始值
			int num = m * m - m + 1;
			// 循环遍历m次,输出m个值。值num每次循环加2
			for (int i = 0; i < m; i++) {
				if (i == (m - 1)) {
					System.out.print(num);
				} else {
					System.out.print(num + "+");
					num += 2;
				}
			}
			System.out.println();
		}

	}

}

输入:

6

输出:

31+33+35+37+39+41

你可能感兴趣的