完美立方

来源:互联网 发布:scientific linux安装 编辑:程序博客网 时间:2024/06/11 23:18
形如a*a*a=b*b*b+c*c*c+d*d*d,称为完美立方。给定一个数n,输出小于等于n且满足完美立方的数。a,b,c,d都不是负数,且都大于一。
b<=c<=d;
输出格式如 6 3 4 5,如果输出多组,按a从小到大输出,若a相等,按b从小到大输出,以此类推。 
#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    for(int a=2;a<=n;a++)
        for(int b=2;b<=a-1;b++)//减少循环次数
        for(int c=b;c<=a-1;c++)
        for(int d=c;d<=a-1;d++)
    {


        int t=a*a*a;
        int m=b*b*b+c*c*c+d*d*d;
        if(t==m)
            cout<<a<<'\t'<<b<<'\t'<<c<<'\t'<<d<<endl;
    }
    return 0;
}