Hexcells ist ein Spiel von Minesweeper, das auf Sechsecken gespielt wird. (Vollständige Offenlegung: Ich habe nichts mit Hexcells zu tun. Tatsächlich mag ich das Spiel nicht wirklich.) Die meisten Hexcells-Regeln können ziemlich einfach in Generalized Minesweeper (Minesweeper, gespielt auf einem beliebigen Graphen) ausgedrückt werden. Das Schwierigste ist das {X}
und die -X-
Regeln.
Die {X}
Regel besagt, dass eine Zelle an X
Minen grenzt und dass alle diese Minen in einem kontinuierlichen Pfad aneinander grenzen. Wenn wir zum Beispiel das Board hätten:
? ?
? {3} ?
? ?
Die 6 Möglichkeiten für die Minenplatzierung wären
* . . . . . . * * * * *
* {3} . * {3} . . {3} * . {3} * . {3} * * {3} .
* . * * * * . * . . . .
Ihr Ziel ist es, die Regel {3}
in generalisierten Minesweeper zu implementieren .
Besonderheiten
Generalized Minesweeper ist Minesweeper, das auf einem beliebigen Graphen gespielt wird. Der Graph hat zwei Arten von Eckpunkten, einen "Indikator" oder einen "Wert". Ein Wert kann entweder ein oder aus sein (eine Mine oder ein Blindgänger), sein Status ist dem Spieler jedoch unbekannt. Ein Indikator teilt dem Spieler mit, wie viele benachbarte Scheitelpunkte sich auf (Minen) befinden und zählt nicht als Mine.
Das folgende Board für Generalized Minesweeper zeigt uns beispielsweise, dass die Zellen A und B entweder beide Minen sind oder keine von ihnen Minen sind.
(In der Grafik sind die Anzeigen grau markiert, während die Werte weiß sind.)
Anders als bei normalen Minensuchbooten, bei denen Sie auf Werte klicken, die deaktiviert sind, um Indikatoren anzuzeigen, gibt es bei Generalized Minesweeper keine solche Mechanik. Ein Spieler bestimmt einfach, für welche Zustände der Graph seinen Indikator erfüllen kann.
Ihr Ziel ist es, in Generalized Minesweeper eine Struktur zu erstellen, bei der es 6 bestimmte Zellen gibt, die nur Zustände haben können, die sich erfüllen, als wären sie mit der Hexcells-Regel verbunden {3}
. Wenn Sie Ihre Lösung schreiben, sollten Sie keine spezifischen Werte für Wertezellen berücksichtigen. (In Beantwortung der Frage von H.PWiz ist es zulässig, dass einige Wertzellen aus dem Status ableitbar sind. Sie können jedoch jederzeit Ihre Punktzahl verbessern, indem Sie solche Zellen entfernen.)
Wertung
Ihre Antworten werden anhand der Anzahl der Eckpunkte im endgültigen Diagramm minus 6 (für die 6 Eingaben) bewertet, wobei eine niedrigere Punktzahl besser ist. Wenn zwei Antworten mit dieser Metrik übereinstimmen, ist der Gleichstand die Anzahl der Kanten.
Lösbarkeit
Dieses Problem ist lösbar. Ich habe eine Lösung für dieses Problem und werde sie veröffentlichen, sobald diese Herausforderung eine Woche alt ist.
quelle
{3}
Regel" besagt " alle diese Minen grenzen in einem durchgehenden Pfad aneinander " - ohne Kanten gibt es keinen Pfad.{3}
". Sie müssen nicht verbunden seinAntworten:
75 Ecken,1410 Kanten(Grafik erstellt mit diesem Online-Tool und malen.)
A
-F
Sind unsere sechs Knoten, undJ
ist ein Hilfsknoten. Die drei1
-nodes erzwingen , die entgegengesetzte Knoten verschieden sind, während die2
-node stellt sicher , dassA
,C
undE
können weder alle Minen, noch alle leer.Edit: -2 Vertices dank CalculatorFeline und H.PWiz!
quelle
9 Eckpunkte, 17 Kanten
Wo ? Ist eine Wertezelle, die
6
uns nicht interessiert, brauchen wir den folgenden Untergraphen.Meine ASCII-Kunstfähigkeiten sind schrecklich.
Mit diesen 6 Ecken eingerichtet:
ABC
kann folgende Zustände haben:111
,110
,011
,000
,100
,001
Mit den Zellen der folgenden Sechseck entspricht, alles , was wir dann brauchen , sind 3 weitere Indikatorzellen
A-1-D
,B-1-E
,C-1-F
quelle
A,C,E
stattdessen überprüfenA,B,C
.ACE
und zulässtBDF
. In diesen FällenACE
ist die Anzahl der Minen entweder 0 oder 3, in einer gültigen Lösung jedoch 1 oder 2. Dies ermöglicht Ihnen eine Punktzahl von 5.44 Ecken, 66 Kanten
Zunächst beginnen wir mit einem Ring von 6 Wertzellen, die alle mit einer 3 verbunden sind. Diese Zellen sind die Zellen mit der
{3}
Regel.Anschließend werden 012-Sensoren an die Wertzellenpaare (AB, BC, CD, DE, EF, FA) angeschlossen. Der Aufbau des 012-Sensors ist im Folgenden dargestellt.
A und B sind die Eingänge zum Sensor und O ist der Ausgang. Das ? Zellen sind Zellen mit generischem Wert. O wird eine Mine sein, wenn genau A und B eine Mine sind und ansonsten leer. Dann verbinden wir einen 2-Knoten mit allen Sensorausgängen. Dies stellt sicher, dass es genau 2 Paare mit genau 1 Mine gibt, und es kann bewiesen werden, dass die einzigen Konfigurationen, die dies erfüllen, diejenigen sind, die dies erfüllen
{3}
. Jeder Sensor benötigt 7 Knoten, also benötigen 6 Sensoren 42. Addieren Sie die 3 Knoten, die mit ABCDEF verbunden sind, und die 2 Knoten, die mit den Ausgängen verbunden sind, und Sie erhalten 44.Diese Lösung kann auch angepasst werden ,
{1}
-{5}
durch den 3 Knoten auf einen anderen Wert zu ändern.quelle
012
Sensor? Außerdem zähle ich nur 6 Knoten in Ihrem012
C
inO
, daC
ist inABCDEF