主题:请教一道题
逍遥我一生
[专家分:20] 发布于 2005-07-19 08:59:00
请教一道题一个农场里由35头鸡和兔子, 他们有72只脚 求鸡和兔子各有多少只 .
程序怎么做
回复列表 (共11个回复)
沙发
liji [专家分:530] 发布于 2005-07-19 18:12:00
编了一个,超级垃圾,但超级好使
main()
{
int ji,tu;
for(ji=0;ji<=35;ji++)
for(tu=0;tu<=18;tu++)
if(ji+tu==35 && ji*2+tu*4==72)
printf("chicken=%d,rabbit=%d",ji,tu);
}
板凳
XVenus [专家分:20] 发布于 2005-07-19 19:54:00
tu<=18?
Why?
3 楼
davidw017 [专家分:4170] 发布于 2005-07-20 11:07:00
兔子有 4 只脚,而至多有 72 只脚,72/4=18 即最多有 18 个秃子
4 楼
kero [专家分:0] 发布于 2005-07-23 00:25:00
穷举。。。确实是实用而简便的方法。。。
但是碰到大问题就不行咯~~~~~~
5 楼
MagicG [专家分:650] 发布于 2005-07-29 19:44:00
不过编程的路并不只有一条,虽然是穷举,但是有的人编出来就会有天壤之别,那就是因为程序要不断地优化`!
这就是为什么tu<=18?的原因了`
6 楼
编程王 [专家分:90] 发布于 2005-07-30 13:36:00
不过编程的路并不只有一条,虽然是穷举,但是有的人编出来就会有天壤之别,那就是因为程序要不断地优化`!
这就是为什么tu<=18?的原因了
老大,优化也要有个度。优化太复杂反而影响时间。
7 楼
MagicG [专家分:650] 发布于 2005-07-30 14:50:00
影响的是人脑工作的时间,呵呵```
就这个问题来说优化讲到底就是为了减少运算时间啊``
8 楼
飘渺孤鸿 [专家分:60] 发布于 2005-08-02 17:03:00
干吗要用两个for循环?!
9 楼
MagicG [专家分:650] 发布于 2005-08-02 20:48:00
因为有鸡的同时也有兔子啊`~
10 楼
prominent [专家分:60] 发布于 2005-08-09 08:45:00
其实有个简单的方法,鸡和兔子同时举起两只脚,下面的脚就是2只,
所以兔子的就是1撒
我来回复