题目描述:
【验证尼科彻斯定理】验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。
例如:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
输入描述:
输入一个int整数
输出描述:
输出分解后的String
解题思路:
观察规律,m的3次方可以表示成m个连续奇数的和。m的2次方很明显是这m个连续奇数的平均数,由此可以找到等式的开始数和结尾数,最后用StringBuffer类的变量和"+"将这m个数连接起来,就得到最终的结果。
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNextInt()){
int n=sc.nextInt();
int res=n*n*n;
int mid=n*n;
StringBuffer sb=new StringBuffer();
int begin=mid+1-n;
int end=mid-1+n;
for(;
begin<=end;
begin+=2){
if(begin==end){
sb.append(begin);
break;
}
sb.append(begin+"+");
}
System.out.println(sb.toString());
}
sc.close();
}
}