以下是引用mandown1991在2011-3-2 23:24:56的发言:
这是我们的课后习题,因为到现在还学得不多,只是学到了多路if-else结构,所以一点思路都没有,所以莫怪小弟学艺不精啊!
八币问题:有八枚硬币,其中一枚是假的,它只有重量与其它几枚不同,外形无法辨认。现在有一台无砝码的天平。则如何利用这台天平,用最少的次数找出假币?
我现在思路有一点点,但是不知道用C语言如何表达,我的思路是这样的:先从这八枚硬币中拿出六个,分成两份,假设假币就是剩下的那没拿到两个中的一个,但是不知道是哪一个,那么只要从真币中随便拿一个与这两枚硬币称重比较一下,则只需两次即可找到假币。
请问各位有怎样的看法?用C语言又该如何表达?请指教!谢谢!
这是我们的课后习题,因为到现在还学得不多,只是学到了多路if-else结构,所以一点思路都没有,所以莫怪小弟学艺不精啊!
八币问题:有八枚硬币,其中一枚是假的,它只有重量与其它几枚不同,外形无法辨认。现在有一台无砝码的天平。则如何利用这台天平,用最少的次数找出假币?
我现在思路有一点点,但是不知道用C语言如何表达,我的思路是这样的:先从这八枚硬币中拿出六个,分成两份,假设假币就是剩下的那没拿到两个中的一个,但是不知道是哪一个,那么只要从真币中随便拿一个与这两枚硬币称重比较一下,则只需两次即可找到假币。
请问各位有怎样的看法?用C语言又该如何表达?请指教!谢谢!
看楼主的思路不错呀,为什么只分析了剩下两个是假币的情况?要是天平不平怎么办?把思路说全了,代码就出来了。