请高手解决一道与水仙数有关的问题
找一个最小的自然数,使它等于不同的两组三个自然数的三次幂之和,即找最小的x,使得:x=a*a*a+b*b*b+c*c*c = d*d*d+e*e*e+f*f*f
其中,a,b,c,d,e,f都是自然数,a<=b<=c, d<=e<=f; [a,b,c]!=[d,e,f]
进一步,是否还存在另外一个自然数满足上述条件,可能的话请输出其结果。
如果哪位作出来,请给出源程序。
搜索更多相关的解决方案:
水仙
----------------解决方案--------------------------------------------------------
水仙花数是[abc]=a*a*a+b*b*b+c*c*c吧...恕我愚昧...没看懂这个需求和水仙花数有什么不一样耶
----------------解决方案--------------------------------------------------------
算法思想:枚举
----------------解决方案--------------------------------------------------------
孔明这个时候还来
----------------解决方案--------------------------------------------------------
孔明帮论坛想想办法啊,都没人了。。。。
----------------解决方案--------------------------------------------------------
人都去哪里了?
----------------解决方案--------------------------------------------------------
楼主似乎没弄明白水仙花数的定义,二楼是对的,它是唯一的吧……
下面是所有的水仙花数,你可以看一下:
main(){
int p,j,k,n;
for(n=100;n<1000;n++)
{ j=n/100;p=n%100/10;k=n%10;
if(n==j*j*j+p*p*p+k*k*k)
printf("%4d",n);
}
}
----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]blueboy82006[/un] 在 2008-3-2 20:04 的发言:[/bo]
楼主似乎没弄明白水仙花数的定义,二楼是对的,它是唯一的吧……
下面是所有的水仙花数,你可以看一下:
main(){
int p,j,k,n;
for(n=100;n
楼主似乎没弄明白水仙花数的定义,二楼是对的,它是唯一的吧……
下面是所有的水仙花数,你可以看一下:
main(){
int p,j,k,n;
for(n=100;n
的确...水仙花数我觉得应该是唯一的...
153=1*1*1+5*5*5+3*3*3...再没别的解法了
所以.......
----------------解决方案--------------------------------------------------------
我还有一个方法,是从论坛上看来的,给你看看行么??
#include <stdio.h>
int main(int argc, char* argv) {
int i, j, k, n;
for (i = 1; i < 10; i++) {
for (j = 1; j < 10; j++) {
for (k = 1; k < 10; k++) {
if (n = i * 100 + j * 10 + k == i * i * i + j * j * j + k * k * k) {
printf("%d", n);
}
}
}
}
}
错了,请看11楼!!!!!!!!!!!
[[it] 本帖最后由 mqh21364 于 2008-3-3 15:02 编辑 [/it]]
----------------解决方案--------------------------------------------------------
if (n = i * 100 + j * 10 + k == i * i * i + j * j * j + k * k * k)
连续赋值,小心报错哦...
我估计会打印一排1
[[it] 本帖最后由 peach5460 于 2008-3-3 11:33 编辑 [/it]]
----------------解决方案--------------------------------------------------------