王師傅總的經濟活動可以歸結為兩件事。一件事是以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元。下面讓我們把這種解法稱為“零和博弈法”。
這種解法和始末狀態法實質上差不多,只是換成了考慮顧客的狀態變化而已。好處是明確地指出了鄰居不賠不賺,不參與博弈。按照很多人的說法,鄰居是個“干擾項”。這種方法的復雜度又稍稍上升了一點,不過還是很容易說清楚的。
那么問題來了,為什么對很多人來說,這三種簡練又正確的解法不能說服他們?我想,這是因為他們信不過這些只考慮總的變化的方法,一定要把每一步的交易細節都列出來才能安心。
看來人真是復雜的動物,看似簡單的問題,竟然這么復雜!
發表于:2022-11-05