昨晚刷到了某知名網(wǎng)校的抖音教學(xué)視頻,解法又把我給雷倒了。
問題是個(gè)標(biāo)準(zhǔn)的題: 數(shù)一數(shù)圖中一共有多少個(gè)正方形。
我們來看看這個(gè)號(hào)稱學(xué)霸妹子的講解。
用標(biāo)數(shù)法,橫著標(biāo)上1、2、3、4,豎著標(biāo)上1、2、3。
然后呢,用4×3,加上每個(gè)數(shù)字再減去1的乘積,即3×2,再加上每個(gè)數(shù)字再減去1的乘積,即2×1,最后算一下,等于20。
妹子最后問: 你學(xué)會(huì)了嗎?
覺得有道理?趕緊點(diǎn)擊屏幕,領(lǐng)取學(xué)霸筆記!
你們學(xué)沒學(xué)會(huì)我不知道,反正我沒學(xué)會(huì)。當(dāng)然,這樣的學(xué)霸筆記,送給我我也不會(huì)領(lǐng)。
除了這個(gè),網(wǎng)上還有不少網(wǎng)紅題目的標(biāo)數(shù)法解答。
比如這個(gè)用來數(shù)立方體個(gè)數(shù)的頭頂標(biāo)數(shù)法。
還有下面這個(gè)上過機(jī)構(gòu)的娃都會(huì)脫口而出的最短路徑標(biāo)數(shù)法。
我們就來看看這最后一道網(wǎng)紅題。
沒錯(cuò),直接講標(biāo)數(shù)法滿足了許多家長、孩子和老師對(duì)于短平快的追求,但卻避開了兩個(gè)最根本的問題: 一是標(biāo)數(shù)法的原理到底是什么?二是標(biāo)數(shù)法適用的問題到底是什么?
如果數(shù)學(xué)學(xué)習(xí)只是單純?nèi)ビ涀「嗟募记尚苑椒?,那和多背幾首唐詩也沒有太大的差別。不少低年級(jí)的孩子通過強(qiáng)化記憶訓(xùn)練,確實(shí)會(huì)解許多高年級(jí)的小奧套路題,給大家造成了天才神童越來越多的假象,引來許多家長的艷羨。但在我看來,這并不值得大家崇拜甚至模仿。 恰恰是許多人忽略的 后面這 兩個(gè)根本問題 ,才 是 提 升認(rèn) 知層 級(jí)的關(guān)鍵 。等搞清楚孩子有沒有辨識(shí)和分析問題的能力,再投去羨慕的眼光也不遲。
很多講解視頻中都說標(biāo)數(shù)法用于解決求最短路問題。我估計(jì)95%以上的老師都沒有正兒八經(jīng)地思考過標(biāo)數(shù)法真正適用的問題類型。顯然,最短路徑的說法是不全面的。比如下面的問題:
圖中,求從甲到乙的所有不同路徑條數(shù)。
這個(gè)問題可以用標(biāo)數(shù)法,但好像求的并不是最短路徑啊。
我給一些孩子做過下面這個(gè)題。
How many different ways are there to get from point A to point D, assuming no ege can be traced twice? (Note: there is no restriction on how many times a point can be passed through. )
假如任何一條邊都不能經(jīng)過兩次,那么從點(diǎn)A到點(diǎn)D有多少種不同的走法?(注:對(duì)一個(gè)點(diǎn)被經(jīng)過多少次不做限制。)
很多孩子碰到這個(gè)問題直接脫口而出用標(biāo)數(shù)法。但標(biāo)數(shù)法用在這里顯然有問題。能用標(biāo)數(shù)法解的問題,每個(gè)點(diǎn)只能經(jīng)過一次,但在這個(gè)問題里,點(diǎn)可以經(jīng)過多次。因此,標(biāo)數(shù)法不適用。
這個(gè)問題我們可以完全回到本原,利用圖形的對(duì)稱性枚舉求解。我們知道,最后從B到達(dá)D的路徑條數(shù)等于最后從C到達(dá)D的路徑條數(shù),因此只要枚舉出經(jīng)過B到達(dá)D的路徑條數(shù),最后乘以2即可。由于不限制所經(jīng)過點(diǎn)的次數(shù),而是限制所有邊只能經(jīng)過一次,因此,為了方便列舉,我們可將邊標(biāo)上數(shù)字以示區(qū)別。
經(jīng)過B到達(dá)D的路徑分別有:
1-6
3-4-6
2-5-4-6
2-5-3-1-6
3-5-2-1-6
共有5條。
因此從A到D的邊不重的路徑有10條。
而如果問題變成:假如每個(gè)點(diǎn)都不能重復(fù)經(jīng)過,那么從點(diǎn)A到點(diǎn)D有多少種不同的走法?
這個(gè)問題是不是就能用標(biāo)數(shù)法呢?
很人多認(rèn)為既然問題中都說了點(diǎn)不能重復(fù)經(jīng)過,那肯定是可以用標(biāo)數(shù)法了。其實(shí)不然! 標(biāo)數(shù)法背后的本質(zhì)是加法原理,標(biāo)數(shù)法的實(shí)質(zhì)是經(jīng)過加法原理逆向思考后的正向求解。
那問題是,該先標(biāo)E還是先標(biāo)B或C呢?
我們知道:
從A到B的路徑條數(shù)=從A直接到B的路徑條數(shù)+經(jīng)過E到B的路徑條數(shù)
從A到E的路徑條數(shù)=從A直接到E的路徑條數(shù)+從A經(jīng)過B到E的路徑條數(shù)+從A經(jīng)過C到E的路徑條數(shù)
這樣,就產(chǎn)生了一個(gè)問題,即從A到E的路徑條數(shù)依賴于從A到B的路徑條數(shù),反過來,從A到B的路徑條數(shù)又依賴于從A到E的路徑條數(shù)。這就產(chǎn)生了先有雞還是先有蛋的問題。
為什么會(huì)有這個(gè)問題?這是因?yàn)檫@個(gè)問題中存在圈!
這就觸及了標(biāo)數(shù)法適用問題的最根本約束: 如果把圖中允許走的每條邊表示成有向的,那么標(biāo)數(shù)法適用的圖是有向無圈的。這樣,每個(gè)點(diǎn)的前驅(qū)才是確定的,且不會(huì)產(chǎn)生循環(huán)。
顯然,這個(gè)問題存在圈,所以不能用標(biāo)數(shù)法。
具體到這個(gè)問題,我們?nèi)匀豢梢岳脠D形的對(duì)稱性,枚舉出經(jīng)過B到達(dá)D的路徑數(shù):
A-B-D
A-E-B-D
A-C-E-B-D
所以,整個(gè)問題的路徑條數(shù)為3×2=6條。
有了上面的基礎(chǔ),不妨來嘗試一下這個(gè)挑戰(zhàn)吧:
(1)假如每個(gè)點(diǎn)都不能重復(fù)經(jīng)過,那么從點(diǎn)A到點(diǎn)D有多少種不同的走法?
(2)假如任何一條邊都不能經(jīng)過兩次,那么從點(diǎn)A到點(diǎn)D有多少種不同的走法?(注:對(duì)一個(gè)點(diǎn)被經(jīng)過多少次不做限制。)
作者簡介:昍爸,中科院計(jì)算機(jī)博士,曾獲初中和高中全國數(shù)學(xué)奧林匹克聯(lián)賽一等獎(jiǎng),江蘇賽區(qū)第一名,高考數(shù)學(xué)滿分。現(xiàn)為大學(xué)計(jì)算機(jī)專業(yè)教授,平時(shí)注重提升孩子的數(shù)學(xué)和計(jì)算思維,開設(shè)有公眾號(hào)xuanbamath。