การระบุกริด 9x9 ใด ๆ จำเป็นต้องให้ตำแหน่งและค่าของแต่ละช่อง การเข้ารหัสnaïveสำหรับสิ่งนี้อาจให้ 81 (x, y, ค่า) triplets ต้องใช้ 4 บิตสำหรับแต่ละ x, y และค่า (1-9 = 9 ค่า = 4 บิต) รวมเป็น 81x4x3 = 972 บิต ด้วยการกำหนดหมายเลขแต่ละช่องสี่เหลี่ยมเราสามารถลดข้อมูลตำแหน่งเป็น 7 บิตปล่อยบิตสำหรับแต่ละตารางและรวม 891 บิต โดยการระบุคำสั่งที่กำหนดไว้ล่วงหน้าหนึ่งสามารถลดลงอย่างมากนี้เป็นเพียง 4 บิตสำหรับแต่ละค่ารวม 324 บิต อย่างไรก็ตามซูโดกุอาจมีตัวเลขที่ขาดหายไป นี่เป็นโอกาสที่จะลดจำนวนตัวเลขที่ต้องระบุ แต่อาจต้องใช้บิตเพิ่มเติมเพื่อระบุตำแหน่ง การใช้การเข้ารหัส 11 บิตของเรา (ตำแหน่งค่า) เราสามารถระบุตัวต่อด้วยเบาะแสกับ11 Nปริศนา)บิตเช่นตัวต่อน้อยที่สุด (17) ตัวต้องใช้ 187 บิต การเข้ารหัสที่ดีที่สุดที่ฉันเคยคิดว่าจะใช้หนึ่งบิตสำหรับแต่ละช่องว่างเพื่อระบุว่าเต็มแล้วหรือไม่และถ้าเป็นเช่นนั้น 4 บิตต่อไปนี้จะเข้ารหัสหมายเลข สิ่งนี้ต้องใช้บิต 149 สำหรับจิ๊กซอว์ขั้นต่ำ ( n = 17 ) มีการเข้ารหัสที่มีประสิทธิภาพมากกว่าหรือไม่หากไม่มีฐานข้อมูลของการตั้งค่า sudoku ที่ถูกต้องแต่ละครั้ง (คะแนนโบนัสสำหรับการพูดถึงnทั่วไปจากN ×
มันเพิ่งเกิดขึ้นกับฉันว่าปริศนาจำนวนมากจะเป็นการหมุนของปริศนาอื่นหรือมีการเปลี่ยนตัวเลขอย่างง่าย บางทีนั่นอาจช่วยลดบิตที่ต้องการได้
ตามที่ วิกิพีเดีย ,
จำนวนกริดการแก้ปัญหาซูโดกุแบบคลาสสิก 9 × 9 คือ 6,670,903,752,021,072,936,960 (ลำดับ A107739 ใน OEIS) หรือประมาณ 21
ถ้าผมทำถูกคณิตศาสตร์ของฉัน ( ) ซึ่งมีข้อมูล 73 บิต (72.498) บิตสำหรับตารางการค้นหา
แต่:
จำนวนของวิธีการแก้ปัญหาที่แตกต่างกันอย่างมีนัยสำคัญเมื่อสมมาตรเช่นการหมุนการสะท้อนการเปลี่ยนแปลงและการ relabelling ถูกนำมาพิจารณาแสดงให้เห็นว่าเป็นเพียง 5,472,730,538 [15] (ลำดับ A109741 ใน OEIS)
นั่นให้บิต 33 (32.35) ดังนั้นจึงเป็นไปได้ที่วิธีการที่ฉลาดในการระบุว่าการเปลี่ยนรูปแบบที่ใช้จะต่ำกว่า 73 บิตเต็ม