我真是不要命了
都忙成這樣還有時間想這個.......
前一陣子很瘋的數獨(Sukodu),
要怎麼寫程式去描述?
目前大概有個底。
二維陣列的數字填入並不難,
後面的檢查才是關鍵。
目前只能做到一個維度數字不重複,
要如何檢查第二個維度同時間兼顧第一個維度的正確性,
這才是目前需要搞定的地方。
程式寫完了,再來要進入數學了。
原本是不給定陣列元素,讓程式亂數產生數獨陣列。
如果我現在給定其中n個陣列元素,對於數獨解的數目,會有多少影響?
最少需要給定多少個陣列元素,數獨陣列才會有必然的唯一解?
給定的陣列元素的位置,對於數獨陣列又有多少影響?
如果只能給定1個陣列元素,有沒有可能數獨陣列會有唯一解?如果不可能,那將陣列元素擺在哪個座標,會有最少解?
最後,有沒有可能在不違反規則的情況下,給定特定數目的陣列元素,使數獨陣列變成無解?
以上問題,先等我程式寫出來再說。
如果有人可以提出完整證明或是程式碼(限用C語言),請留言給我。
沒有留言:
張貼留言