最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

星戰(zhàn)的4N結(jié)論

2022-03-14 23:38 作者:嘉和逆天  | 我要投稿

星戰(zhàn)的規(guī)則詳見謎題規(guī)則介紹#5 放置類——星戰(zhàn)(starbattle)

這個結(jié)論很簡單:

(1)N>1時,每行每列N個星星的星戰(zhàn)至少需要4N*4N的盤面才能放下,并且

(2)如果不限制宮的情況下,4N*4N的盤面每行每列放N個星星恰有兩個解。

(3)而N=1時,除去一個1*1的盤面有唯一解以外,剩下的結(jié)論同上。

注:以下內(nèi)容證明較多較枯燥,如果不想看證明而只想知道兩個解長什么樣,只需要看圖即可。

由于證明了(1)(2)可以推出(3),故這里只證(1)(2)。

證明(1)是很簡單的,只需要利用星戰(zhàn)的一個常用結(jié)論:任何2*2區(qū)域內(nèi)最多只有1個星星。

假如盤面是M*M的,而每行每列需要放N個星星,那么星星的總數(shù)是N*M個。由于任何2*2區(qū)域內(nèi)最多只有一個星星,因此盤面的面積不能小于星星數(shù)目的4倍,即盤面的面積不小于4N*M。而盤面的面積就是M*M,因此M≥4N。

對于(2),我們來證明一下。

首先構(gòu)造M=4,N=1時的兩個解,這里只有兩個解也是顯然的:

對于N>1的情況,構(gòu)造其實是類似的。至于為什么呢,我們回頭看看N=1的情況,將整個盤面分成2N*2N個2*2的部分,如下所示:

那么,這里的每一個2*2都恰好有一個星星。我們將上圖中每一塊2*2視為一個新的“單元格”,將這些“單元格”所在的行列稱為“大行”和“大列”。那么我們有一個結(jié)論:同一個大行的星星,要么都在大行內(nèi)2*2的左側(cè)兩格,要么都在右側(cè)兩格;同一個大列的星星,要么都在大行內(nèi)2*2的上側(cè)兩格,要么都在下側(cè)兩格。

這個小結(jié)論證明并不難,以同一個大列的為例,我們看盤面的第2行,它要有N個星星。如果某個大列的第2行存在星星,那么由區(qū)塊刪減,該大列的第3行就不能是星星,則該大列的第4行就必須有星星,以此類推,那么這些大列的星星就都在下側(cè)的兩格。那么,由于偶數(shù)行的星星已經(jīng)滿了,剩下的大列的星星只能在奇數(shù)行,也就是說這些剩下的大列的星星都在上側(cè)兩格。大行上的情況是同理的。

那么根據(jù)上述結(jié)論,其實我們可以給每個大列標一個上/下的箭頭,來表示該大列的星星全在上側(cè)或全在下側(cè),可以給每個大行標一個左/右的箭頭,來表示該大行的星星全在左側(cè)或全在右側(cè)。這樣的話,每個大單元格可以看成是有兩個箭頭,來指示星星在該大單元格中的位置。

我們考慮一下還有哪些2*2沒有使用。很明顯,兩個大單元格之間的2*2在論證上述結(jié)論的時候也用到了,那么就只有四個大單元格交叉的2*2未使用了。

這樣的2*2限制了以下兩種情況:

也就是說,如果列里從左到右出現(xiàn)了上(下)變成下(上),那么行里就不能有從上到下的左(右)變成右(左)。

看上去有點繞,但是我們可以得到全盤的方向分布只有兩種情況:

1)列是從左到右連續(xù)N個上之后連續(xù)N個下,行是從上到下連續(xù)N個右之后連續(xù)N個左;

2)列是從左到右連續(xù)N個下之后連續(xù)N個上,行是從上到下連續(xù)N個左之后連續(xù)N個右。

證明的話并不難。先看列上,因為列上必然是N個上和N個下,所以中間至少會出現(xiàn)一次上到下或者下到上的變化。我們假設(shè)是中間出現(xiàn)了上到下的一次變化,那么由上述結(jié)論,行里面就完全不可以出現(xiàn)左到右的變化。因此,行里面只能是連續(xù)N個右之后連續(xù)N個左。那么行里面也有且僅有一次右到左的變化,也就是說列里就完全不可以出現(xiàn)下到上的變化,因此列里面只能是連續(xù)N個上之后連續(xù)N個下,這就是上面的情況1)。另一種情況的說明是類似的。

也就是說,我們證明了解只有兩種情況:

將盤面沿兩條中線分成四個2N*2N大區(qū)域,每個小盤面內(nèi)有N*N個2*2的大單元格,那么

1)左上大區(qū)域的星星在單元格右上,右上大區(qū)域的星星在單元格右下,左下大區(qū)域的星星在單元格左上,右下大區(qū)域的星星在單元格右下;

2)左上大區(qū)域的星星在單元格左下,右上大區(qū)域的星星在單元格左上,左下大區(qū)域的星星在單元格右下,右下大區(qū)域的星星在單元格右上。

感覺文字說明看不懂?沒關(guān)系,下面是N=2的時候的兩個解,知道之后大家就可以類推出更大的N的時候的解了。

事實上,兩個解是鏡像對稱的,因此記住了一個就相當(dāng)于記住了另一個。

那么,這個結(jié)論就介紹完了,下面是兩個練習(xí)題,10階題目來自我自己出的謎題整活賽,12階題就是N=3的情況,大家可以嘗試一下,可能不知道這個結(jié)論的話做這兩個題回?zé)o從下手,但是知道結(jié)論之后就很簡單了。

來自整活賽的一題,整的當(dāng)然是這個結(jié)論的活
N=3,看看大家能不能推出來了

感謝?@Li2CO3?對本文證明部分內(nèi)容作的貢獻!

好,那么這篇文章到這里也要結(jié)束了,別走到,文末有彩蛋哦!


彩蛋:某 @Li2CO3 在看到未完工的文章的時候,寫了以下東西:

將盤面分成(2n*2n)個2*2的

每個(你懂的那種)2*2恰有一個星。

看第(2k+1)和第(2k+2)列,阿巴阿巴,懶得寫,證畢?。。。。?!

星戰(zhàn)的4N結(jié)論的評論 (共 條)

分享到微博請遵守國家法律
榆林市| 嘉黎县| 四会市| 沙田区| 巫山县| 昌图县| 彰化县| 龙南县| 腾冲县| 凭祥市| 盈江县| 陆良县| 苍山县| 泰兴市| 青田县| 新和县| 万年县| 铁岭市| 西贡区| 盘锦市| 和林格尔县| 寿光市| 阜阳市| 德清县| 白玉县| 双辽市| 晋中市| 南陵县| 浦城县| 兴山县| 屯留县| 新和县| 吉水县| 琼中| 探索| 瓦房店市| 菏泽市| 榆树市| 昔阳县| 深泽县| 资源县|