您的位置:首页 > 其它

算法-完美立方(枚举)

2018-01-23 21:00 253 查看
package MOOC;

import java.util.Scanner;

//枚举(完美立方)
/**
* 形如a^3=b^3+c^3+d^3的等式被称为完美立方等式,对任给的正整数N(N<=100),寻找所有的四元组(a,b,c,d),使得a^3=b^3+c^3+d^3,其中a,b,c,d大于1,小于等于N,且b<=c<=d;
* 输入:一个正整数N
* 输出:每行输出一个完美立方,格式为:
* 注意输出时按照a值从小到大输出,当a相等按照b从小到大输出,以此类推
* @author Vivinia
*
* 2018年1月23日
*/
public class PerfaceCube {
//四重循环枚举a,b,c,d,a在最外层,d在最里层,每一层都是从小到大枚举,a[2,N],b[2,a-1],c[b,a-1],d[c,a-1]
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int N=input.nextInt();
input.close();
for(int a=2;a<=N;a++)
for(int b=2;b<a;b++)
for(int c=b;c<a;c++)
for(int d=c;d<a;d++)
if(a*a*a==b*b*b+c*c*c+d*d*d)
System.out.println("Cube="+a+",Triple=("+b+","+c+","+d+")");
}

}
枚举并不代表全部数据都得试一下,可以筛选范围
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: