圍住神經(jīng)貓攻略 數(shù)學(xué)大神教你成功圍住神經(jīng)貓
“圍住神經(jīng)貓”雖然是一個(gè)小游戲,但細(xì)細(xì)想來(lái),其實(shí)也是一個(gè)很有意思、值得探討的數(shù)學(xué)問(wèn)題。
先拋出結(jié)論:
在原游戲的條件下,由于初始占有點(diǎn)的隨機(jī)性,在考慮最壞情況下(如一個(gè)點(diǎn)都沒(méi)占有),無(wú)法確保圍住神經(jīng)貓。但是,當(dāng)棋盤(pán)擴(kuò)展到一定程度時(shí)(M不小于9,M的定義會(huì)在下面說(shuō)明),無(wú)論初始狀態(tài)如何,存在策略,必能?chē)∩窠?jīng)貓。
下面給出本人對(duì)這個(gè)問(wèn)題較為詳盡的分析,個(gè)人觀(guān)點(diǎn),僅供參考。
從表面上看,神經(jīng)貓能走到的格子數(shù)是 9×9=81 格,但這個(gè)“棋盤(pán)”并不是對(duì)稱(chēng)的,神經(jīng)貓只需要走 4 步就能到棋盤(pán)的邊緣,而一旦被神經(jīng)貓?zhí)拥狡灞P(pán)邊緣,游戲就結(jié)束了。
神經(jīng)貓的逃跑策略是貪心算法,也就是說(shuō),它總是考慮當(dāng)下離邊緣最近的路線(xiàn)。
實(shí)際上,如下圖所示,神經(jīng)貓 4 步可以走到的格子被深紅色標(biāo)出,其中帶五角星的是棋盤(pán)的邊緣。
瀏覽原圖
神經(jīng)貓顯然會(huì)盡可能地往帶五角星的格子逃跑,而我們要做的便是在貓到達(dá)五角星格子以前,把它攔住。
為了便于討論,我們考慮更具有代表性的問(wèn)題,如下圖所示:
瀏覽原圖
問(wèn)題描述:在一個(gè)邊長(zhǎng)為 M(上圖中 M=5)正六邊形的棋盤(pán)上,要在最壞情況下,依然確保能抓住神經(jīng)貓,令最小能滿(mǎn)足條件的 M 為 N,求 N 的值。
下面證明,N=9。
如覺(jué)得證明過(guò)于數(shù)學(xué)化,可跳過(guò)該證明,直接看文末總結(jié)的本游戲技巧。
———證明開(kāi)始的分界線(xiàn)———
你真的想看證明過(guò)程嗎?
數(shù)學(xué)控請(qǐng)點(diǎn)擊“”查看。
———證明結(jié)束的分界線(xiàn)———
回到原游戲。從上面的分析可以感受到“圍住神經(jīng)貓”的技巧精髓有如下幾點(diǎn):
0、游戲的精髓,不是用最少的步數(shù)圍住神經(jīng)貓,因?yàn)榫筒綌?shù)而言,受開(kāi)局影響太大,主要靠運(yùn)氣;游戲的精髓,是在特定開(kāi)局情況下(我無(wú)法改變):
(1)盡最大可能,確保圍住神經(jīng)貓;
(2)在確保(1)的情況下,盡可能使包圍圈小,從而減少?lài)∷牟綌?shù)。
1、慎勿輕速。除非有援兵,否則應(yīng)該要遠(yuǎn)遠(yuǎn)地張開(kāi)一張大網(wǎng),在己方很弱的情況下,切勿輕敵。因?yàn)槟愕乃俣炔槐壬窠?jīng)貓快,所以直接近身堵截,你總是會(huì)慢一步。當(dāng)你在部署完防御之前,和神經(jīng)貓短兵相接,你就跪了。
2、包圍圈的設(shè)計(jì)。
由引理 3,有推論:當(dāng)神經(jīng)貓和我的包圍圈短兵相接之前,如果神經(jīng)貓足夠聰明,我必須保證,在我的包圍圈,已經(jīng)布置至少 7 個(gè)子。且盡可能在 6 個(gè)方向上都有子力分布。
如下圖所示,如何圍住神經(jīng)貓?
瀏覽原圖
易見(jiàn),神經(jīng)貓至多 3 步就可以與我的防守子力短兵相接。而我設(shè)計(jì)的包圍圈已經(jīng)有了 4 個(gè)子,所以我接下來(lái)的 3 個(gè)子,都必須用于包圍圈的設(shè)計(jì)。
如下的包圍圈是可行的:
瀏覽原圖
然后就開(kāi)始撒下大網(wǎng):
瀏覽原圖
至紅 5,大網(wǎng)所需的 7 點(diǎn)已經(jīng)占領(lǐng)完畢,神經(jīng)貓已經(jīng)無(wú)法逃出。
如果它負(fù)隅頑抗,參見(jiàn)下圖,至 40,它終于進(jìn)入了包圍圈。
瀏覽原圖
但是如果包圍圈設(shè)計(jì)得不好呢?如下圖所示,左下角的包圍圈,神經(jīng)貓只要 2 步就可以短兵相接了。
瀏覽原圖
如下圖,到白 4,實(shí)際上你已經(jīng)圍不住神經(jīng)貓了。
瀏覽原圖
接下來(lái)的攻防如幾乎是必然的,至白 26,神經(jīng)貓安然逃出。
瀏覽原圖
所以,設(shè)計(jì)包圍圈是很重要的!能不能?chē)【驮诳赡芫驮?1 步之間!
(注:本例證明了,如果神經(jīng)貓足夠聰明,起始的時(shí)候,你至少要有 4 個(gè)子,且位置合理,才有機(jī)會(huì)捉住它。)
3、由于實(shí)際游戲中,神經(jīng)貓沒(méi)那么聰明,它在左上方有通道的情況下會(huì)一味地往左上方逃跑,而不會(huì)拐彎,所以,在左上防御充分的前提下,還是盡可能在其它位置做好防御,防患于未然嘛。
瀏覽原圖
如圖,正因?yàn)樯窠?jīng)貓一開(kāi)始總是往左上角跑,所以這種狀態(tài)才能?chē)∷?,如果神?jīng)貓往左下或右上跑,其實(shí)是圍不住的。
4、上面已經(jīng)證明,當(dāng) M=9 的時(shí)候,我才能確保捉住神經(jīng)貓。對(duì)于本題來(lái)說(shuō),相當(dāng)比 M=5 略好一些。
故,必然存在某些情況,因?yàn)樽约鹤恿μ酰约焊緹o(wú)法捉住神經(jīng)貓——這個(gè)時(shí)候,就放小貓咪一個(gè)生路好了。
全部評(píng)論