A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 宋蕈 中级黑马   /  2012-4-9 08:35  /  2224 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

关于一道小算法题
考虑方程式:a^3 + b^3 = c^3 + d^3
其中:“^”表示乘方。a、b、c、d是互不相同的小于30的正整数。
这个方程有很多解。比如:
a = 1,b=12,c=9,d=10 就是一个解。因为:1的立方加12的立方等于1729,而9的立方加10的立方也等于1729。
当然,a=12,b=1,c=9,d=10 显然也是解。
如果不计abcd交换次序的情况,这算同一个解。
找到所有小于30的不同的正整数解。把a b c d按从小到大排列,用逗号分隔,每个解占用1行。比如,刚才的解输出为:
1,9,10,12
不同解间的顺序可以不考虑。 大家有解的都可以拿出来分享下。。。

4 个回复

倒序浏览
for(int a=0; a<30; a++){
for(int b=0; b<30; b++){
for(int c=0; c<30; c++){
for(int d=0; d<30; d++;){
if(a*a*a +b*b*b==c*c*c+d*d*d){
System.out.println(a,b,c,d)
}
}
}
}
}
回复 使用道具 举报
姜志钦 发表于 2012-4-9 09:18
for(int a=0; a

额 ,是不是太繁琐了。。
回复 使用道具 举报
耿世玉 发表于 2012-4-9 09:23
额 ,是不是太繁琐了。。

这是最直观的,几个变量就用几个循环,比较不会出错。当然也可以不用这么多循环,就要多用选择结构,那也比较绕弯。
回复 使用道具 举报
看完楼主的帖子,我的心情竟是久久不能平复,正如老子所云:大音希声,大象希形。我现在终于明白我缺乏的是什么了,从楼主那对真理的执着追求和楼主那种对理想的艰苦实践的深邃的眼神中。面对楼主的帖子,我震惊得几乎不能动弹了,楼主舍我其谁的个人栖止,竟使我忍不住一次次的翻开楼主的帖子,每看一次楼主的样子,赞赏之情就激长数分,我总在想,是否有神灵活在他灵秀的外表下,以至能使人三月不知肉味,使人有余音穿梁,三日不绝的感受。楼主,你长得实在是太好了。我唯一能做的,就只有把这个帖子顶上去这件事了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马