Διαδρομές
/
Clojure
Clojure
/
Ασκήσεις
/
Βοηθός Killer Sudoku
Βοηθός Killer Sudoku

Βοηθός Killer Sudoku

Μέτριο

Οδηγίες

Ένας φίλος σου μαθαίνει να λύνει Killer Sudoku (κανόνες παρακάτω) αλλά δυσκολεύεται να καταλάβει ποια ψηφία μπορούν να μπουν σε ένα κλουβί. Σου ζητάει να τον βοηθήσεις γράφοντας ένα μικρό πρόγραμμα που να απαριθμεί όλους τους έγκυρους συνδυασμούς για ένα δεδομένο κλουβί, καθώς και τυχόν περιορισμούς που επηρεάζουν το κλουβί.

Για να είναι η έξοδος του προγράμματός σου εύκολη στην ανάγνωση, οι συνδυασμοί που επιστρέφει πρέπει να είναι ταξινομημένοι.

Κανόνες του Killer Sudoku

  • Ισχύουν οι κανονικοί κανόνες του Sudoku.
  • Τα ψηφία σε ένα κλουβί, που συνήθως σημειώνεται με μια διακεκομμένη γραμμή, αθροίζονται στον μικρό αριθμό που δίνεται στη γωνία του κλουβιού.
  • Ένα ψηφίο μπορεί να εμφανίζεται μόνο μία φορά σε ένα κλουβί.

Για πιο λεπτομερή εξήγηση, δες αυτόν τον οδηγό.

Παράδειγμα 1: Κλουβί με έναν μόνο δυνατό συνδυασμό

Σε ένα κλουβί 3 ψηφίων με άθροισμα 7, υπάρχει μόνο ένας έγκυρος συνδυασμός: 124.

  • 1 + 2 + 4 = 7
  • Οποιοσδήποτε άλλος συνδυασμός που αθροίζεται σε 7, π.χ. 232, θα παραβίαζε τον κανόνα της μη επανάληψης ψηφίων μέσα σε ένα κλουβί.

Πλέγμα Sudoku, με τρία κλουβιά Killer που είναι σημειωμένα ως ομαδοποιημένα.
Το πρώτο κλουβί Killer βρίσκεται στο πλαίσιο 3×3 στην πάνω αριστερή γωνία του πλέγματος.
Η μεσαία στήλη αυτού του πλαισίου σχηματίζει το κλουβί, με τα ακόλουθα κελιά από πάνω προς τα κάτω: το πρώτο κελί περιέχει ένα 1 και ένα σημάδι με μολύβι του 7, που υποδηλώνει άθροισμα κλουβιού 7, το δεύτερο κελί περιέχει ένα 2, το τρίτο κελί περιέχει ένα 5.
Οι αριθμοί είναι επισημασμένοι με κόκκινο για να δείξουν ένα λάθος.
Το δεύτερο κλουβί Killer βρίσκεται στο κεντρικό πλαίσιο 3×3 του πλέγματος.
Η μεσαία στήλη αυτού του πλαισίου σχηματίζει το κλουβί, με τα ακόλουθα κελιά από πάνω προς τα κάτω: το πρώτο κελί περιέχει ένα 1 και ένα σημάδι με μολύβι του 7, που υποδηλώνει άθροισμα κλουβιού 7, το δεύτερο κελί περιέχει ένα 2, το τρίτο κελί περιέχει ένα 4.
Κανένας από τους αριθμούς σε αυτό το κλουβί δεν είναι επισημασμένος και επομένως δεν περιέχει λάθη.
Το τρίτο κλουβί Killer ακολουθεί την εξωτερική γωνία του κεντρικού πλαισίου 3×3 του πλέγματος.
Αποτελείται από τα ακόλουθα τρία κελιά: το πάνω αριστερό κελί του κλουβιού περιέχει ένα 2, επισημασμένο με κόκκινο, και ένα άθροισμα κλουβιού 7.
Το πάνω δεξί κελί του κλουβιού περιέχει ένα 3.
Το κάτω δεξί κελί του κλουβιού περιέχει ένα 2, επισημασμένο με κόκκινο. Όλα τα άλλα κελιά είναι κενά.

Παράδειγμα 2: Κλουβί με πολλούς συνδυασμούς

Σε ένα κλουβί 2 ψηφίων με άθροισμα 10, υπάρχουν 4 δυνατοί συνδυασμοί:

  • 19
  • 28
  • 37
  • 46

Πλέγμα Sudoku, με όλα τα τετράγωνα κενά εκτός από τη μεσαία στήλη, τη στήλη 5, η οποία έχει 8 γραμμές συμπληρωμένες.
Κάθε δύο συνεχόμενες γραμμές σχηματίζουν ένα κλουβί Killer και είναι σημειωμένες ως ομαδοποιημένες.
Από πάνω προς τα κάτω: η πρώτη ομάδα είναι ένα κελί με τιμή 1 και ένα σημάδι με μολύβι που υποδηλώνει άθροισμα κλουβιού 10, κελί με τιμή 9.
Η δεύτερη ομάδα είναι ένα κελί με τιμή 2 και ένα σημάδι με μολύβι του 10, κελί με τιμή 8.
Η τρίτη ομάδα είναι ένα κελί με τιμή 3 και ένα σημάδι με μολύβι του 10, κελί με τιμή 7.
Η τέταρτη ομάδα είναι ένα κελί με τιμή 4 και ένα σημάδι με μολύβι του 10, κελί με τιμή 6.
Το τελευταίο κελί της στήλης είναι κενό.

Παράδειγμα 3: Κλουβί με πολλούς συνδυασμούς που είναι περιορισμένο

Σε ένα κλουβί 2 ψηφίων με άθροισμα 10, όπου η στήλη περιέχει ήδη ένα 1 και ένα 4, υπάρχουν 2 δυνατοί συνδυασμοί:

  • 28
  • 37

Οι 19 και 46 δεν είναι δυνατοί λόγω του 1 και του 4 στη στήλη, σύμφωνα με τους κανονικούς κανόνες του Sudoku.

Πλέγμα Sudoku, με όλα τα τετράγωνα κενά εκτός από τη μεσαία στήλη, τη στήλη 5, η οποία έχει 8 γραμμές συμπληρωμένες.
Η πρώτη γραμμή περιέχει ένα 4, η δεύτερη είναι κενή και η τρίτη περιέχει ένα 1.
Το 1 είναι επισημασμένο με κόκκινο για να δείξει ένα λάθος.
Οι τελευταίες 6 γραμμές της στήλης σχηματίζουν κλουβιά Killer των δύο κελιών το καθένα.
Από πάνω προς τα κάτω: η πρώτη ομάδα είναι ένα κελί με τιμή 2 και ένα σημάδι με μολύβι που υποδηλώνει άθροισμα κλουβιού 10, κελί με τιμή 8.
Η δεύτερη ομάδα είναι ένα κελί με τιμή 3 και ένα σημάδι με μολύβι του 10, κελί με τιμή 7.
Η τρίτη ομάδα είναι ένα κελί με τιμή 1, επισημασμένο με κόκκινο, και ένα σημάδι με μολύβι του 10, κελί με τιμή 9.

Δοκίμασέ το μόνος σου

Αν θέλεις να δοκιμάσεις ένα προσιτό Killer Sudoku, μπορείς να παίξεις αυτό το παζλ του Clover, που παρουσίασε ο Mark Goodliffe στο Cracking The Cryptic στις 21 Ιουνίου 2021.

Μπορείς επίσης να βρεις Killer Sudoku ποικίλης δυσκολίας σε πολλές εφημερίδες, καθώς και σε εφαρμογές, βιβλία και ιστοσελίδες Sudoku.

Συντελεστές

Τα παραπάνω στιγμιότυπα οθόνης δημιουργήθηκαν με το F-Puzzles.com, ένα εργαλείο δημιουργίας παζλ του Eric Fox.

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
Clojure Exercism

Έτοιμος να ξεκινήσεις την άσκηση Βοηθός Killer Sudoku;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις Clojure με 12 έννοιες105 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.