自制數獨謎題難度等級表

首先聲明一點:本“數獨謎題難度等級表”純屬我個人一家之言,僅供娛樂,不喜勿噴。


製作這樣一張表,是基於最近研究數獨解法的成果。


下面是一道頗有難度的數獨謎題:


自制數獨謎題難度等級表


用普通算法解出來需時13秒以上,甚至更多,用我的算法不到1秒就搞定:


自制數獨謎題難度等級表

找到第一個解


自制數獨謎題難度等級表

繼續遍歷尋找,有唯一解


有了這樣的研究基礎,才敢堂而皇之、大言不慚地談論“數獨謎題難度等級”。


等級如下圖:


自制數獨謎題難度等級表

自制數獨謎題難度等級表


等級說明:

1.唯一空格:指根據數獨規則通過邏輯推理能夠唯一確定可填數的格子,換言之,唯一空格的可填數只有一個,

2.遞歸空格:指根據數獨規則通過邏輯推理可以確定可填數範圍的格子,換言之,遞歸空格的可填數在2到9個之間。

3.根據“數獨_百度百科”的介紹,不存在提示數小於等於16個而結果唯一的數獨謎題,故而有唯一解的數獨謎題的遞歸格數最多是81-17=64個。

4.同理,有唯一解的數獨謎題的唯一格數最多也是64個。

名詞說明:

提示數:指謎面給出的已知數,有唯一解的提示數最少是17個,關於“不存在提示數16個的唯一解的數獨謎題”這一結論據說是全世界許多計算機暴力驗證許多年得出的(2009年設計的新算法,花費了 710萬小時CPU時間完成驗證,約合810年,單臺計算機參與是不可想像的)。

遞歸:當一個空格的可填數字在2個到9個範圍時,人工填數獨的方法是“試填”,計算機處理起來叫“遞歸”,就這麼簡單理解吧。


當然,本文所指“邏輯斷定”的唯一空格是基於以下四種最基本的邏輯判斷方法,有沒有更為複雜精妙的,鄙人尚不知曉。

1.同行數字為1到9不重複出現;

2.同列數字為1到9不重複出現;

3.同宮數字為1到9不重複出現;

4.當前空格同宮其餘兩列、兩行貫通“井”字排除斷定法。


第4條頗為麻煩,但對於數獨愛好者而言,小菜一碟,不值一提。


本文給出的“數獨難度等級表”算是本人研究成果的一個記錄,純屬娛樂。


附註說明:

等級6所以放大,是因為這一級逼近“唯一格數”的最大極限數64個,目前我只找到了唯一格最多51格的,估計太多的是不存在的,如圖:


自制數獨謎題難度等級表

逼近唯一格最大極限

等級7所以放大,是因為這一級逼近“遞歸格數”的最小極限數1個,目前我只找到了遞歸格最少37格的,估計太少的是不存在的,如圖:


自制數獨謎題難度等級表

逼近遞歸格最小極限


哈哈,數獨這玩意兒用計算機玩的話更有意思一點,人腦玩這個遊戲我的水平極低,是“菜鳥”級別,這玩意兒和“掃雷”還不一樣,特別考驗人的記憶能力,不光是邏輯推斷能力,因為經常用到的邏輯規則也就那麼幾條。


自制數獨謎題難度等級表

有趣的數獨


分享到:


相關文章: