完美立方

形 如 a3 = b3 + c3 + d3 的 等 式 被 称 为 完 美 立 方 等 式 。 倒 如 

123 = 63 + 83 + 103 。 编 写 一 个 程 序 , 对 任 给 的 正 整 数 N 

( N 100L 寻 找 所 有 的 四 元 组 ( a , b, c, d), 使 得 a3 = 

b3+ c3 + d3, 其 中 a,b,c,d 大 于 1 , 小 于 等 于 N , 且 

b<=c<=d

穷举法 但是要注意 a,b,c,d的范围

#include <bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n; 
	//a	:	[2,n] 
	for(int a=2;a<=n;a++)
	{
		//b	:	[2,a-1]
		for(int b=2;b<a-1;b++)
		{
			//c	:	[b,a-1]
			for(int c=b;c<=a-1;c++)
			{
				//d	:	[d,a-1]
				for(int d=c;d<=a-1;d++)
				{
					if(a*a*a==b*b*b+c*c*c+d*d*d)
					{
						cout<<a<<" "<<b<<" "<<c<<" "<<d<<endl;
					}
				}
			}
		}
	}
	
}

输入:24

输出:

6 3 4 5
12 6 8 10
18 2 12 16
18 9 12 15
19 3 10 18
20 7 14 17
24 12 16 20

类似文章