金钱遐思

来自计算思维百科
跳转至: 导航搜索
金钱遐思1.png

在中国,买79元的东西,你要将钱包翻个底朝天,凑足这些钱币。而如果直接拿100元整钱出来,对方就会找你更多的零钱,下次你翻零钱要花的时间就更长。我们在这里要考虑的问题是:怎样组合不同的币值,才能让找零最为方便快捷呢?

中国有1、2、5、10、20和50元这几种不同的纸币来凑齐100元。我们在凑钱的过程中往往会使用“贪心算法”。因为我们希望凑出来的最后的纸币数量尽可能的少,每一次都优先选择当前的最优解,即可选的最大币值。比如我们想凑足76元,就会用4张纸币—50元,20元,5元和1元。

有人曾做过这样一个研究,以一套币制的多种币值选择为基础,调查了凑出1元到100元之间任意零钱所需的平均纸币数量。如果使用1、5、10、25面值的纸币,凑出1元到100元之间的任意零钱,平均需4.7张纸币,如果你只有面值为1元的纸币,凑99元就要99张纸币,平均所需纸币数量就是49.5,当然,这是最坏的情况。只有面值为1元和10元的纸币时,平均数就成了9。现在就出现了一个有趣的问题:我们能否不用常规的1、5、10和25元的纸币,而用另一套面值的纸币,让纸币的平均数量减少呢?如果有1、5、18和29元,或者1、5、18和25元的两套面值的纸币,凑出1元到100元之间的任意零钱,平均只需3.89张纸币,最好的一套币值方案就是1、5、18和25元。这只需要对现有面值稍作改动,即用面值为18元的纸币换掉10元的纸币。

运用的计算思维

优化指在解决问题时面对多种可行的策略、方案或答案,能从中寻找一种最佳的策略、方案或答案。本案例通过使用另一套4种面值的纸币,让纸币的平均数量从4.7降到了3.89,节省了制作纸币成本,让交易更加便利。体现了优化的计算思维。                                          

参考资料

约翰·D. 巴罗著;申晓羽译.读心术的把戏=100 essential things you didn't know you didn't know:其实你不知道的100件事/—上海:上海科技教育出版社,2011