Einführung
Schreiben Sie einen Löser für die Hitori- Rätsel mit den wenigsten Bytes.
Herausforderung
Ihre Aufgabe ist es, einen Löser für die Hitori (ひ ひ と, das Wort für "allein" auf Japanisch; der Name des Spiels lautet "Lass mich in Ruhe") zu schreiben. Die Regeln lauten wie folgt:
- Es wird ein n-mal-n-Gitter mit Zellen angezeigt, wobei jede Zelle eine ganze Zahl zwischen 1 und n (einschließlich) enthält.
- Ihr Ziel ist es, sicherzustellen, dass keine Zahl mehr als einmal in jeder Zeile und jeder Spalte des Rasters vorkommt, indem Sie Zahlen aus dem angegebenen Raster entfernen, vorbehaltlich der in den nächsten beiden Regeln angegebenen Einschränkungen.
- Sie können zwei Zahlen nicht aus zwei benachbarten (horizontal oder vertikal) Zellen entfernen.
- Die verbleibenden nummerierten Zellen müssen alle miteinander verbunden sein. Dies bedeutet, dass zwei verbleibende nummerierte Zellen mit einer Kurve verbunden werden können, die nur aus Segmenten besteht, die benachbarte verbleibende Zahlen (horizontal oder vertikal) verbinden. (Danke an @ user202729 für den Hinweis, dass dies fehlt)
Ich hoffe, die Regeln sind jetzt klar. Wenn die Regeln unklar sind, überprüfen Sie die Wikipedia-Seite .
Testfälle
Die Zellen, aus denen die Zahlen entfernt werden, werden mit 0en dargestellt.
Input -> Output
4
2 2 2 4 0 2 0 4
1 4 2 3 -> 1 4 2 3
2 3 2 1 2 3 0 1
3 4 1 2 3 0 1 2
4
4 2 4 3 0 2 4 3
4 1 1 2 -> 4 1 0 2
3 1 2 1 3 0 2 1
4 3 1 3 0 3 1 0
5
1 5 3 1 2 1 5 3 0 2
5 4 1 3 4 5 0 1 3 4
3 4 3 1 5 -> 3 4 0 1 5
4 4 2 3 3 4 0 2 0 3
2 1 5 4 4 2 1 5 4 0
8
4 8 1 6 3 2 5 7 0 8 0 6 3 2 0 7
3 6 7 2 1 6 5 4 3 6 7 2 1 0 5 4
2 3 4 8 2 8 6 1 0 3 4 0 2 8 6 1
4 1 6 5 7 7 3 5 -> 4 1 0 5 7 0 3 0
7 2 3 1 8 5 1 2 7 0 3 0 8 5 1 2
3 5 6 7 3 1 8 4 0 5 6 7 0 1 8 0
6 4 2 3 5 4 7 8 6 0 2 3 5 4 7 8
8 7 1 4 2 3 5 6 8 7 1 4 0 3 0 6
9
8 6 5 6 8 1 2 2 9 8 0 5 6 0 1 2 0 9
5 6 2 4 1 7 9 8 3 5 6 2 4 1 7 9 8 3
5 8 2 5 9 9 8 2 6 0 8 0 5 0 9 0 2 0
9 5 6 6 4 3 8 4 1 9 5 6 0 4 3 8 0 1
1 1 6 3 9 9 5 6 2 -> 0 1 0 3 9 0 5 6 2
1 1 4 7 3 8 3 8 6 1 0 4 7 0 8 3 0 6
3 7 4 1 2 6 4 5 5 3 7 0 1 2 6 4 5 0
3 3 1 9 8 7 7 4 5 0 3 1 9 8 0 7 4 5
2 9 7 5 3 5 9 1 3 2 9 7 0 3 5 0 1 0
Diese Testfälle stammen aus Concept Is Puzzles , PuzzleBooks , Concept Is Puzzles , Wikipedia bzw. Youtube .
Technische Daten
Sie müssen sich keine Sorgen um die Ausnahmebehandlung machen.
Sie können davon ausgehen, dass die Eingabe immer ein gültiges Puzzle mit einer eindeutigen Lösung ist, und Sie können dies beim Schreiben Ihres Codes nutzen.
Dies ist Code-Golf , die niedrigste Anzahl von Bytes gewinnt.
4 <= n <= 9 (16 ursprünglich in 9 geändert nach dem Vorschlag von Stewie Griffin, ersparen Sie auch einige Probleme bei der Eingabe / Ausgabe)
Sie können Eingaben und Ausgaben über jedes Standardformular vornehmen und das Format frei wählen.
Einige Vorschläge für das Ausgabeformat sind (aber Sie sind nicht auf diese beschränkt)
- Ausgabe des endgültigen Rasters
- Ausgabe des Rasters mit allen entfernten Zahlen
- Geben Sie eine Liste der Koordinaten einer der oben genannten aus
Wie üblich gelten hier Standardlücken .
Verwandt (inspiriert von dieser Herausforderung): Überprüfen Sie, ob alle Elemente in einer Matrix verbunden sind
Meine letzte Herausforderung: Erweiterung des Spiels der Siebener
4 <= n <= 16
, aber der größte Testfall ist fürn=9
. Ich schlage vor, dass Sie entweder einenn=16
Testfall posten oder sagen4 <= n <= 9
. Schöne Herausforderung übrigens :)