立方和大难题(Java)
在下小白,以下是百度的代码,求大佬们帮我注释的更加清楚一些。
如果大佬们觉得有更优解,麻烦贴一下,并完善一下注释。
package week2;
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Scanner input = new Scanner(System.in);
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个数");
int a = scanner.nextInt();
int x[]=new int[a];
long sum = 0;
int i=0,j=0,k=0;
for (i = 0; i < a; i++)// 把0到a之间的的数的3次方赋值到对应下标的数组内
x[i] = i * i * i;
for (i = 2; i < a; i++)//作为数组下标
for (j = 1; j < i; j++)//作为开始算的最小值
for (k = j; k < i; k++)//不断增大最左边值
{
sum += x[k];
if (sum == x[i])
{
System.out.printf("%d^3 + ...... + %d^3 = %d^3\n", j, k, i);
sum = 0;
break;
}
if (k + 1 == i)
{
sum = 0;
break;
}
}
}
}