从“王师傅卖鞋收假钞亏多少”看科学思维

从“王师傅卖鞋收假钞亏多少”看科学思维

袁岚峰

【观察者网编辑:一道早已在民间流传的数学“难题”,终于传到了小编的朋友圈里,小编有幸成为独二的答对者,和独一的用两种方法答对的人,但在费尽口舌向朋友们解释之余,实在不理解,为何这么多人会做错?直到看见了这篇文章……】

有一天我一上微信,我妈就问我一个问题:“一道测你有没有商业头脑的数学题:王师傅卖鞋,一双鞋进价30元甩卖20元。顾客来买鞋给了张50,王师傅没零钱,于是找邻居换了50元。事后邻居发现钱是假的,王师傅又赔了邻居50。请问王师傅一共亏了多少?(这道题目不简单,到底亏了多少?这是在某群做的一道题,100人的群,半个小时之内只有两人答对,大家试试!)”

我立刻告诉了她答案。然后发现她把我的答案发到了我的亲戚们的一个微信群里,原来他们已经热议一下午了,算出好几个结果。我妈贴出我的答案以后,他们还在继续争论。我不由得笑了,于是把这道题发到微博上。想不到这题一下子就吸引了几百位网友,更想不到的是网友们给出的答案更加五花八门,据不完全统计,有30、40、50、60、70、80、90、100、110、130以至210!不同观点的网友们之间展开了激烈的辩论,真正是百花齐放,百家争鸣!答错的人里,不乏我很尊敬的、学历很高的朋友。还常有人重新思考后修正自己的答案,甚至还有两位同学连续给出3个答案,而且还都是错的……

这令我陷入了深思:是什么原因使得这么一道看似很简单的题目能产生这么多答案?题目中总共就3个数,30、20、50,不同的人几乎是把这3个数的各种组合方式都尝试了个遍。答对这道题本身只需要小学的数学水平,但要解释为什么各种答案都有人报,以及为什么有人给出正确答案后还有很多人不信,就远远不止是小学难度了。仔细琢磨起来,这需要用上我多年的科学训练和科研实践。总之,这是一个关于科学思维方式的深刻问题。下面我来通过剖析这道题,讲解科研人员是如何思考的?不同的解法之间有什么区别?这么多答案反映了人类思维的什么特点,什么常见误区?如何树立建设性的思维习惯?

首先需要指明一点,在科学当中,得到结论的过程往往和结论同样重要,甚至更加重要。这是科学和魔法的本质区别。一个科学家提出一个结论,别的科学家必须完全理解他的论证过程,才会接受他的结论。这个论证过程很可能具有普遍意义,会被用到更多的问题上去。有时结论中有错误,但论证过程很有启发性,同行们也会承认这个工作的价值。一个科技新闻报道出来,一般人只会记住结果,科研人员却会注意他们采用了什么新的思路、新的方法,为什么前人做不到,他们做到了。这正是所谓“内行看门道,外行看热闹”。所以普通人单凭看书是不可能成为科技专家的,也不可能培养出真正的科学思维,这只有在科研实践中才能逐步掌握。这一点是许多人、包括不少大学问家的一大误区。例如康有为、梁启超在外国游历一番,就觉得自己对西方世界的优点缺点都了解得很清楚了,别人也盛赞他们是学贯中西,于是他们就开始放言无忌,甚至能得出西方文明等待中国文明去拯救的结论。实际上,西方最核心的竞争力,即现代科技,他们连边都还没摸着呢!我对康梁以及所有犯过类似错误的哲学家(包括革命导师们马恩列斯毛)绝无不敬,只是指出一点,没搞过自然科学研究的人是很难理解科研的思维的。

回到原题。这道题的正确答案当然只有一个,但得出正确答案的方法却有很多。然而这些方法之间并不是平等的,科研人员会给它们排个序,不同的方法体现了不同的智慧水平。这就好比有些数学定理(如四色定理)已经被证明了,但数学家还在继续追求别的证明方法,因为他们相信这个问题优雅而深邃,已有的证明太笨重,说明人类对这个问题的本质还没有认识清楚。数学家一定会寻求最简洁、最深刻的证明。好,那么这道题最简洁、最深刻的解法是什么呢?

是这样:王师傅总的经济活动可以归结为两件事。一件事是以30元买进一双鞋,20元卖出,这件事亏了30 - 20 = 10元。另一件事是收了一张50元的假钞,这件事亏了50元。两者相加,总共亏了60元。下面让我们把这种解法称为“任务分解法”。我最初给我妈说的就是这种解法:卖鞋亏10元,假钞亏50元。

这个任务分解法好在什么地方?好在它把原来的大问题分解成了多个独立的小问题,大问题的答案就是小问题答案之和。而每个小问题又尽可能的容易解决,最多只用到了两个数的相减。这样你可以迅速得到全部小问题与大问题的答案,还能知道大问题中各个小问题的相对贡献有多大,还便于检查,如果出错也能很快找到是在哪个小问题的哪个环节出的错。总而言之,就是“分而治之”。这个方法的关键在于洞察力,意识到存在这样的任务分解。

第二简洁的方法是什么呢?是这样:考察王师傅在交易前后的状态。最初,王师傅手里有用来买鞋的30元,没有鞋。最终,王师傅把鞋卖给了顾客,而且找给他50 - 20 = 30元。王师傅本来以为自己收到了50元,但结果发现这50元是假钞,这个收益就没了,所以最后他手里是-30元,没有鞋。前后相减,王师傅的资金变化是-30 - 30 = -60,即亏60元。下面让我们把这种解法称为“始末状态法”。

这也是一种很基本的思维方法,在科学中广泛应用,例如热力学关注的就全是状态的变化。但就这道题而言,始末状态法要比任务分解法差一些,因为你必须把始末状态都考虑得很清楚才行,中间步骤不像任务分解法那样便于检查,如果出了错没那么容易定位。不过无论如何,始末状态法的复杂程度只比任务分解法高一点点(高在想清楚给顾客找30元就等于说最终状态是-30元),同样是把题目中的30、20、50这3个数只用了一次,仍然是一个很好的解法。

第三简洁的解法是什么?是考虑顾客的状态变化。顾客最初手里是一张实际价值为零的假钞,最终得到了原价30元的鞋和30元钱,总共赚了60元。王师傅加顾客加邻居,三人的得失应该相抵,即所谓“零和博弈”。邻居给出50元又收回50元,不赔不赚。那么顾客赚的就是王师傅赔的,即60元。下面让我们把这种解法称为“零和博弈法”。

这种解法和始末状态法实质上差不多,只是换成了考虑顾客的状态变化而已。好处是明确地指出了邻居不赔不赚,不参与博弈。按照很多人的说法,邻居是个“干扰项”。这种方法的复杂度又稍稍上升了一点,不过还是很容易说清楚的。

那么问题来了,为什么对很多人来说,这三种简练又正确的解法不能说服他们?我想,这是因为他们信不过这些只考虑总的变化的方法,一定要把每一步的交易细节都列出来才能安心。

交易细节会是什么样子呢?按照时间顺序是:一,王师傅手上有30元,没有鞋。二,买一双鞋,有了鞋,钱为零。三,收到50元假钞。四,找邻居换了50元真钞。五,自己保留20元,把鞋和50 - 20 = 30元的找钱给顾客。六,发现是假钞,给邻居50元,自己剩下20 - 50 = -30元,没有鞋。结论:资金变化是-30 - 30 = -60,亏60元。所以,没错,这样会得到同样的结果。下面让我们把这种解法称为“交易细节法”。它可以看做是始末状态法的细化版本,都是通过比较两种状态算出结论的。区别在于它要详尽地列出每一个步骤,计算量和复杂程度高了许多。

这种方法的麻烦就出在这儿,因为细节列得越详细(用科研人员常用的比喻来说,“分辨率越高”),出错的可能性就越大。而且你还必须列完所有细节才知道答案,要检查只有从头列一遍,找错误就变得更难了。这就是为什么有人连续给出3个答案,却全都是错误的!

我前面是用最容易理解的日常语言列的交易细节,而有管理或会计经验的人可能会用他们的术语。例如陈果说的是:“期初资产:30(库存资产)+50(货币资产),期末资产:20(货币资产),其中邻居交易那50和找给顾客的30都是流水,所以期末减期初是60。亏60。”@七剑传人123 说的是:“做一下会计分录就一清二楚了。(1)借:库存商品 30 贷:银行存款 30 (2)借:银行存款 20 贷:营业收入 20 (3)借:营业成本 30 贷:库存商品 30 (4)借:营业外支出 50 贷:银行存款 50 。王师傅亏损额=营业收入20-营业成本30-营业外支出50=-60。亏60元嘛。”@查理不是怪蜀黍说的是:“这个用会计记账法吧:借方为+,贷方为-。进价30元记-30(给出去的),甩卖20记+20(收回的)。收客户+50,找零-30。50元为假币冲帐-50。合计:-30+20+50-30-50=-60。亏损60元。【问邻居借钱这个是障眼法,可以视为王师傅自己回家拿零钱】”我不懂他们的记账法,不过既然结果是对的,相信他们的过程也是对的。不过能这么记账的都是专业人士,普通人学个半吊子,就很容易出错了。甚至就连陈果老师,在写出这一番财会分析之前,最初给出的答案也是“50 + 30 + 10 = 90”!

那么为什么在用交易细节法时,如此容易出错?让我们来剖析一个例子。最常见的一个错误答案看起来是110元,他们想的是:给了顾客一双鞋价值30元,又找给他30元,还给了邻居50元,30 + 30 + 50 = 110。错误在哪里?错误在于只记得最后给了邻居50元,却忘了前面收到过邻居的50元。有人也许会说:收到的那50元不该算,因为那是拿假钞换的,当时以为是等价交换,并不觉得是收入。错了。收到的50元和给出去的50元要算就得一块算,要不算就得一块不算。只算给出的不算收到的,那是双重标准,实质上相当于把给出的用了两次,第一次用于抵消收到的,第二次又算作净支出。

    这个道理是一说就明白。但为什么有那么多人在自己琢磨的时候会出错?我觉得,这是因为“损失厌恶”。这是一个心理学的术语,意思是人对损失更加敏感。例如甲原先有1100元,失去100元,乙原先有900元,得到100元,两人最终都是1000元,但甲比乙的感觉糟得多。又如许多人宁愿选择无风险(即100%的机会)地获得3000元,而不会选择有80%的机会赢得4000元的赌博,虽然后者的收益期望值是3200元,其实比前者高。在这道题当中,许多人因为损失厌恶而对最后给邻居的50元念念不忘,以至于不自觉地把这笔支出算了两遍,抵消了前面收到的50元后还算作净支出。其它的多种错误解答,也大多可以归结为对某笔支出过于敏感,忘记了相应的收入。当然,那些得出低于60的答案的不是出于这个原因,只能说他们在列交易细节时出错了。

这里要稍稍解释一下。有人认为答案是50元,因为卖鞋亏的那10元是王师傅自愿定价的,正常交易不能算亏,唯一的损失就是那50元假钞。要按这么理解,50当然是正确的。这也许不符合会计的原则,不过对这个问题的整体理解和前面说的任务分解法完全相同,所以在本文中不再深究。这就是一个论证的过程比结论更重要的例子。

总结一下,对“王师傅卖鞋收假钞”这道题,最常见的错误原因是:一,信不过整体分析,一定要列出每个细节;二,损失厌恶导致夸大支出,忽略收入。

对整体分析的不信任是普通人的常见毛病,因为他们觉得这超出了他们的把握能力,只有细节才是他们能把握的。在科学中,整体分析其实是个非常好的东西,如果能实现大家一定不会放过的。例如高中学物理,受力分析搞得人晕头转向,一旦学会能量守恒、动量守恒,会发现许多题目不用受力分析就能算出来,实在是太~方~便~了!又如爱因斯坦的狭义相对论告诉你E = mc2(能量等于质量乘以光速的平方),能量的变化等于质量的变化乘以光速的平方,至于你怎么实现这个质量的变化,它可不管。所以爱因斯坦是研制原子弹的曼哈顿计划的发起者,但他完全没有参加具体研究。能提出一项整体的关系的科学家,都是了不起的人物。当然在把握整体的同时,细节的分析也非常重要,可望加深微观理解,发现新现象。也许在对细节的研究中,你就发现了一项新的整体规律呢?科学就是在整体和细节的两条腿走路中前进的。

厌恶损失在日常生活中会造成许多有趣的后果。例如它意味着人们的幸福感很大程度上不是来自于收入,而是来自于收入的增长。换句话说,经济的增长率带来的幸福感也许比经济的绝对值更大。这就是为什么像中国这样高速增长的国家,人民的幸福感可能不比那些人均GDP很高但经济停滞的国家的低,说不定还更高。还有一个例子,很多人一提毛泽东就想起大跃进和文革的灾难,把他大骂一顿。他们忘记了毛泽东的革命带来了多大的进步,因为他们觉得这些进步都是理所当然的,只有那些损失是如骨鲠在喉的。又如许多人一提政府收税就浑身不舒服,整天喊着减税,但同时又要求政府提供优质的公共服务。这是因为交税是实实在在的痛苦,以至于他们忘记了羊毛出在羊身上的基本道理。

了解了这些人类思维的误区,那么,如何树立建设性的思维习惯呢?我想,要谦虚,要理性,要尊重专家,也要有批判精神,要独立思考,也要读经典文献。总之,这绝非一两句话就能说清的,实际上这个问题就跟“如何做科研”一样困难。但无论如何,通过对这道题的剖析,相信读者已经了解了很多门路,今天的心情是大不同呀大~不~同~

最后,给读者出一道思考题。@倪博士健康家园写了一篇文章《美国人一生平均收入200多万美元,为何不够用?》(https://weibo.com/p/1001603793257036400069),说美国人一生的平均收入是222万元,算来算去,扣除医保、买房、教育、交通、通讯费用以及个人所得税后,只剩下4.84万美元,平均每月过日子的钱只有51.7美元,连每天2美元都不到。最后这个数字一看就很可笑,每天2美元怎么吃饭?显然是错的。但我还是转了这篇文章,因为它的论证过程比它的结论更重要,过程中有不少干货。这个结论错在什么地方?论证过程中有哪些干货?根据这些材料,正确的结论应该是什么?

提示:希望您在课堂上做过实验,学过相对误差的概念。

祝您进步!      


2015年3月写作原文(https://weibo.com/p/1001603822976691787828),2015年6月观察者网发表(https://www.guancha.cn/YuanLanFeng/2015_06_12_323067_s.shtml),2016年4月修订发布于知乎专栏“风云之声”。

作者简介:袁岚峰,中国科学技术大学化学博士,中国科学技术大学合肥微尺度物质科学国家实验室副研究员,中国科学技术大学科技与战略风云学会会长,微博@中科大胡不归,知乎@袁岚峰(https://www.zhihu.com/people/yuan-lan-feng-8),知道日报“袁岚峰”(https://zhidao.baidu.com/daily/author?un=%D4%AC%E1%B0%B7%E5&ie=gbk)。

欢迎关注中国科学技术大学科技与战略风云学会的头条号“风云之声”(https://toutiao.com/m6256575842/)。