一、為什么要寫這篇文章
不知道大家讀書時是否遇到過如下的情景:
老師在講題的時候,經常如未卜先知一般,就知道已知條件里經常存在著一個自己完全不知道的信息;或者分析著分析著,就突然來句:“這道題可以用反證法/數學歸納法……”解法是很精妙,但換你來做,你就是沒有意識到要采用這樣的方法。我也曾經問過老師,為什么你們當時會想到用這種方法?得到的也往往是“不知道”、“題目做多了就明白了”。
為什么答案會想到這樣解?這是讀書以來一直困擾了我很久的問題。
無獨有偶,前段時間在知乎看到這樣一個問題:
高中數學題的【解法】是否僅因為這樣能做出來所以才必須這么做?
題主說到了一個我讀書時一直很困惑的問題:
為什么一定要想到那些特定解題方法(或者稱之為“套路”)才能做出題目?為什么我的其他思路都會成為不歸路?……還是說,這其中根本就沒道理,我要做的只是刷題+總結……,然后考試時做出題目,其他的不要亂想
這些種種的問題匯集到一起,就是一個:解題時需要如何思考?
這個問題更簡單的表述,就是:如何解題?
也許有人會問:“這種問題還需要有答案嗎?問這種問題,是一種不勞而獲的心態!”在這里我不得不為自己辯護一句,一個高段位的解題者,一定具有十分豐富的解題經驗。就像單墫老師所說的,他自己解題的技巧無非就是做高質量的題目,并勤于總結和推廣而已。同時,這位最高票的匿名用戶也表示,其實大牛們的解題想法也是套用了前人的思路,在思維上并無過多可以創新的地方。(數學高手在解題時,是形成了一種難以用語言表達的感覺,還是僅僅搜尋套用以前解過的題的思路?)
既然如此,我們有理由提出這樣一種假設:人們在解題時遵循著共同的思路,只要找出這種思路,將有利于我們解題的進度。
這并不是一個很容易的證明的假設,但幸運的是,這個問題并沒有被人們鄙視,相反地,有很多大牛對于解題時應該怎么想提出了自己具有原創性的想法,在這里,我將整合他們的觀點,對如何解題進行一個系列性的介紹。
二、為什么這道題我解不出來?
為什么這道題我愣是解不出來?
相信每個人潛意識里都有這樣的困惑,明明這道題目看了很多次,但還是不知道這道題怎么解,甚至不知道這道題是哪個部分給自己造成了困擾,然后就看著草稿紙上多了很多無意義的涂鴉。
那么,這種現象背后的原因到底是什么呢?
經過一段時間的對自己以前做題經歷的思考和資料搜集之后,我將這個原因分成了以下三個:
(1)題目考察的知識點是課本上明文列出的知識,但我們不熟悉;
(2)題目考察的知識點是課本上隱含的知識,但我們不熟悉;
(3)題目隱含的信息我們沒有發現。
第一種情況看上去可能很難發生,但我的確遇到過。在我上統計學課程的時候,曾經有一個疑問抓著老師問了將近半個小時,老師也很耐心幫我解答了,盡管我還是半知半解。直到課后我拿起書來看的時候,我驚訝地發現,這個我問的這個問題在書上早就有明確的答案了。現在反思這個事情,這件事就表明了當時我對課本內容的不熟悉。
但更嚴重的問題是,如果你連課本上已經明確說明的知識都不熟悉,那這種情況對雙方的溝通都是有害的。從為你講解的人考慮,這個知識點早就已經內化在他的知識體系當中,屬于他來說,這可能就已經是常識、公理了。要解答這樣的問題,對他來說很難有足夠的動力幫你解答;而對于我們這些求助者來說,講解者囿于其固化的知識體系,要幫你解決這樣的問題也很難做到像一些課本那樣通俗易懂。這也能解釋知乎上有些題目沒人答的原因了。
要解決這個問題也很簡單,如果這個知識點你有印象,請看一下課本看看有沒有辦法用現成的知識解答;如果是對課本所闡述的知識點不理解,可以找一些其他的書目(個人建議老外寫的),來轉換一下自己的思路。
第二種情況比第一種稍難一點。雖然題目涉及的知識在書里面有,但這些知識并非是白紙黑字向你說明的,而是隱藏在習題里,隱藏在某個結論中,需要你進一步舉一反三才能發現。比如說極限的求法,如果是復習考研的同學就知道除了洛必達法則以外,泰勒公式、高階無窮小、拉格朗日中值定理。但在我上高數的記憶中,洛必達法則用得更多,后面三個幾乎沒有涉及到。而且課本中也沒有明確提及泰勒公式、高階無窮小、拉格朗日中值定理能用來求解極限。如果做題經驗不豐富,遇到涉及這三個知識點就容易形成知識盲區。
這也是我們有時候覺得數學難的原因:數學不像文科,文科的知識一般都是已經清清楚楚地寫在書上,你不會做,說明你沒有記憶到有關的知識點;而數學的知識更多是隱藏的,如果不是上課認真聽講時剛好遇到,或者做題時偶然遇到,你是無法發現這些規律的。雖然這些規律是那么好用。
不過,這種情況,如果有認真聽課,做題量大了,事實上這也不成問題。
第三種情況才是我們解不了題的最主要的原因。
試想以下這道題:
給你24個同樣的硬幣,其中23個一樣重,另一個比它們重一些。再給你一架沒有砝碼的天平。最少要稱幾次才能找出那個重幣,怎么稱法?
涉及到的僅僅是簡單的加減乘除,以及大小比較的知識。但僅憑這些信息,還無法讓我們完全把這道題解出來。那么,這種情況我們要如何解決呢?
而在討論這個問題之前,一個必須要面對的問題:一道題目是因為什么而變得困難的?
威克爾格倫認為,一個問題可以分成已知條件(Givens)、運算(Operations)和目標(Goals)。其中,已知條件,是指你將問題拿到手的時候,在問題涉及的范圍內已經存在的一組表達式。運算則是可以對已知條件所采取的行動,包括允許的法則,表達式的推演等等。至于目標,就是人們希望在問題范圍內成立的目標表達式。他認為,解題的目的,就是決定采取什么行動。而影響行動難點的,就是目標、運算甚至目標的缺失。
例如這道題,如果你察覺到了題目的運算是什么,有什么性質,勢必能發現天平背后的隱藏信息:每稱一次,有三種而非兩種不同的結果,即左邊重量大于、等于、小于右邊的重量——理論上用天平稱一次就能夠判斷重幣在三組(而非兩組)當中的哪一組。這道題就能很輕易的解答了。
細說起來就是,把硬幣分成三組,每組8個,如果平衡,則重幣在沒稱過的第三組,如果不平衡,則在重的哪一組;之后對重幣所在的那8個硬幣分成3組,兩組每組3個,剩余的一組兩個,無論在哪一組,稱完之后就可以定位重幣所在組,將硬幣分成3組稱量。這樣,最少需要3次才能稱完。
波利亞在他著名的《怎樣解題》里,是這么審題的:未知量是什么?已知數據是什么?條件是什么?如果看過波利亞的這本書的朋友們,勢必會發現,波利亞在解題時極其重視未知數,甚至用了至少兩個章節來強調:題目要求的是什么,你想要的求的是什么,你希望得到什么……直到明確了要求什么未知數才去努力建立已知條件與未知數之間的聯系。
例如這道題,
某企業調查用戶從網絡獲取信息的習慣,問卷回收率為90%,調查對象中有179人用搜索引擎獲取信息,146人從官網獲取信息,246人從社交網站上獲取信息。同時使用這三種方式的有115人,使用其中兩種的有24人,另有52人者三種方式都不使用,問這次調查發出了多少人問卷?
未知數是派發問卷的總人數,已知條件是①問卷回收率;②三種方式各自的使用人數;③同時使用三種方式的人數;④使用其中兩種方式的人數;⑤三種方式都不使用的人數。
然后就是努力將未知數與已知條件結合起來。由于要求未知量,就是求只用一種方式,同時使用兩種方式,同時使用三種方式,三種方式都不用的人數的總和,而后三者即已知條件③④⑤,則未知量就變成了如何求只用一種方式的人數了。但請別忘記,題目里面還有一個重要的已知數據②——3種搜索方式的使用人數。顯然,新的聯系就是已知數據②與新未知量之間的聯系了,如果留意一下已知條件③和④與已知數據②的聯系可以發現,同時使用三種方式的人數+同時使用兩種方法人數里面的一部分(涉及排列組合)+只使用一種方法的人數之和 =對應方法的使用人數(條件②)。據此列方程即可解除答題的人數,基于已知條件①除以回收率即可得到未知量。
這兩種思維模式有什么不同呢?不同點在于,威克爾格倫更強調對題目背后運算的搜索,然后再借助已知表達式和目標表達式,找到目標表達式之前或者已知表達式之后的中途點;而波利亞則更強調探索未知量(準確地說,是我想得到的量)與已知條件之間的關系,通過不斷地聯系來找到解題的最佳路徑。
不過無論如何,兩者的觀點還是具有一定的共識的。包括:①問題的組成都有已知條件和未知量;②因為題目隱藏了一些東西,可能是題目,可能是允許的運算方法甚至是已知條件,而這些隱藏的東西使得要素之間的聯系變得十分模糊,題目才會那么難。
至于哪種思維方式最有利于解題,各人有各自的見解,但一個可以有趣的信息是,盡管都是講解題的書,可是在豆瓣上威克爾格倫的書遠不如波利亞有名(包括推薦人數,書評等等),如果不是看完覺得很有啟發性,我覺得大家也不會這么樂于推薦波利亞的書吧。
當然,如果硬要解釋,就是按威克爾格倫的解法,優先去考慮運算,容易使得回憶的強度大幅度增加,甚至忘了目標在哪。而波利亞的這種思維順序讓人們能夠緊緊盯著未知量,不至于在思考時忘了自己要求什么了。
本章簡要分析了我們解題時遇到苦難的三種情況:①題目考察的知識點是課本上明文列出的知識,但我們不熟悉;②題目考察的知識點是課本上隱含的知識,但我們不熟悉;③題目隱含的信息我們沒有發現。其中,對于第三種情況,我介紹了威克爾格倫和波利亞對于題目結構的看法。他們關于題目的共識有以下兩點:①問題的組成都有已知條件和未知量;②因為題目隱藏了一些東西,可能是題目,可能是允許的運算方法甚至是已知條件,而這些隱藏的東西使得要素之間的聯系變得十分模糊,題目才會那么難。
(To be continued)
參考文獻
1、(美)G·波利亞. ?怎樣解題 數學思維的新方法[M].?上海:上海科技教育出版社.2007.05
2、(美)威克爾格倫.?怎樣解題[M].北京:原子能出版社.1981.09