เครื่องกำเนิดไฟฟ้า Sudoku แบบสุ่ม


13

ฉันต้องการที่จะสร้างแบบสุ่มสมบูรณ์ซูโดกุ

กำหนดกริดซูโดกุเป็นกริดจำนวนเต็มระหว่าง1ถึง9ซึ่งองค์ประกอบบางอย่างสามารถละเว้นได้ กริดเป็นปริศนาที่ถูกต้องหากมีวิธีที่ไม่ซ้ำกันในการทำให้สมบูรณ์เพื่อให้ตรงกับข้อ จำกัด ของ Sudoku (แต่ละบรรทัด, คอลัมน์และจัดเรียง3 × 3สี่เหลี่ยมจัตุรัสไม่มีองค์ประกอบที่ซ้ำกัน) และมันมีค่าน้อยที่สุดในกรณีนั้น องค์ประกอบปริศนามีหลายวิธี)9×9193×3

ฉันจะสร้างตัวต่อสุ่มซูโดะกุได้อย่างไรว่าตัวต่อซูโดกุทุกตัวนั้นสวมใส่ได้


ดูเหมือนว่าโซลูชันที่ทำงานได้: dryicons.com/blog/2009/08/14/…
Joe

1
ขณะนี้มีคำถามเกี่ยวกับเมตานี้ กรุณาพูดคุยที่นั่นหรือในการแชท
Kevin

คำตอบ:


15

การสร้างการกระจายตัวที่แน่นอนของปริศนาซูโดกุทั้งหมดสามารถทำได้ด้วยวิธีนี้: คุณสามารถสร้างกริด 9x9 แบบสุ่มและจากนั้นเก็บไว้ถ้ามันเป็นกริดซูโดกุที่ถูกต้องเท่านั้น

917

[1,2,..9]9!

บางทีคุณอาจเห็นว่าฉันกำลังจะไปที่ใด: การตอบปัญหานี้ด้วยวิธีที่ชาญฉลาดอาจทำให้คุณสงสัยเกี่ยวกับสมมาตรพื้นฐานของกริดซูโดกุ มีการทำงานมากมายในทิศทางนี้เพื่อพิสูจน์ความจริงที่ว่า 17 เป็นจำนวนน้อยที่สุดของเบาะแสซูโดกุ ( ดูบทความนี้ ) และคุณสามารถไปที่นี่เพื่อดูการแจงนับที่แม่นยำของ 5,472,730,538 คลาสที่คล้ายกัน 3,359,232 กริดซึ่งใช้สิ่งเหล่านี้ สมมาตร:

  1. การเรียงสับเปลี่ยนของตัวเลข
  2. การเรียงสับเปลี่ยนของแถว (แถบและแถวในแต่ละวง)
  3. สิ่งเดียวกันสำหรับคอลัมน์
  4. การขนย้าย

9!,64,64,2

แก้ไข: เพื่อปรับให้เข้ากับปริศนาที่ไม่สมบูรณ์คุณสามารถเลือกสุ่มเซตย่อยของตารางของคุณตรวจสอบว่าวิธีแก้ปัญหานั้นไม่เหมือนใครด้วยตัวแก้ซูโดกุและลองอีกครั้งถ้าไม่ นี่ไม่ใช่การแจกแจงแบบสม่ำเสมอเนื่องจากจำนวนของปริศนาที่ไม่สมบูรณ์พร้อมวิธีแก้ปัญหาเฉพาะอาจแตกต่างกันสำหรับสองกริด (ฉันจะแปลกใจมากเป็นอย่างอื่น)


แต่จัสตินกำลังขอวิธีสร้างปริศนาที่ไม่สมบูรณ์ซึ่งมีวิธีที่ไม่ซ้ำกันในการทำให้เสร็จ แม้ว่าคุณจะสร้างกริด 9x9 ซึ่งเป็นไปตามข้อ จำกัด ของ Sudoku แต่ก็ยังไม่ชัดเจนว่าทำไมการลบเซลล์ย่อยบางส่วนของเซลล์จะทำให้คุณมีปริศนาที่สามารถทำให้เสร็จได้ด้วยวิธีที่ไม่เหมือนใคร
Janoma

1
@ Janoma: โอ้ฉันไม่ดีฉันจะแก้ไข แต่มันก็ไม่ได้มีความหมายมากนักถ้าหากไม่ได้กำหนดว่าตัวต่อที่เหมาะสมคืออะไร (ตารางเป็นตัวต่อเซลล์เดียวที่ว่างตัวต่อหรือไม่) เราต้องการกริดที่น้อยที่สุด (เช่นถ้าคุณลบตัวเลขทางออกนั้นไม่ซ้ำกันอีกต่อไปหรือไม่) นั่นเป็นคำถามที่น่าสนใจ
jmad

"องค์ประกอบบางอย่างสามารถละเว้นได้" นั้นมีความแม่นยำเพียงพอ (เช่นสามารถลบองค์ประกอบ "อย่างน้อยหนึ่งองค์ประกอบ") ได้ ตัวอย่างเช่นตัวต่อที่ถูกต้องที่มีเซลล์ว่างหนึ่งเซลล์สามารถทำให้เสร็จสิ้นได้ด้วยวิธีที่ไม่ซ้ำกันในขณะที่ตัวต่อที่ว่างเปล่าไม่สามารถทำได้เนื่องจากมีตัวต่อที่ถูกต้องมากกว่าหนึ่งตัว นอกจากนี้ปริศนาที่สมบูรณ์ที่ถูกต้องสามารถทำให้เสร็จได้ด้วยวิธีที่ไม่ซ้ำใคร (เล็กน้อย) คำถามเกี่ยวกับกริดที่น้อยที่สุดก็น่าสนใจ แต่แตกต่างจากอันนี้
Janoma

@ Janoma, jmad: ปริศนาที่ใช้ได้จริงปกติแล้วฉันลืมพูดไปแล้ว
Gilles 'หยุดความชั่วร้าย'

@Gilles นั่นเป็นคำจำกัดความหรือไม่ ฉันสงสัยว่านี่เป็นความหมายที่แท้จริงของ OP หรือไม่ มันทำให้ปัญหายากขึ้นอีกมาก :-)
Janoma
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.