Die Herausforderung
Betrachten Sie das 3x3-King-Raster, wie in der folgenden ASCII-Grafik dargestellt:
A--B--C
|\/|\/|
|/\|/\|
D--E--F
|\/|\/|
|/\|/\|
G--H--I
Sie erhalten als Eingabe eine Liste von Ganzzahlen der Länge 9, die eine Beschriftung der Knoten darstellen. Die Eingabe [0,1,1,2,1,0,5,5,1]
repräsentiert beispielsweise die folgende Beschriftung:
0--1--1
|\/|\/|
|/\|/\|
2--1--0
|\/|\/|
|/\|/\|
5--5--1
Ihre Ausgabe ist die Menge von Ganzzahlen in der Eingabe, die verbundene Mengen von Knoten bilden. Genauer gesagt sollte die Ausgabe n
genau dann eine Ganzzahl von der Eingabe enthalten, wenn die Gruppe von Knoten mit Beschriftung n
verbunden ist. In diesem Beispiel wäre ein akzeptabler Ausgang [1,2,5]
, da die beiden 0
s nicht verbunden sind. Die niedrigste Byteanzahl gewinnt.
Detaillierte Regeln
- Sie können eine feste Reihenfolge für die Knoten in Ihrer Eingabeliste auswählen und dies in Ihrer Antwort angeben. In der Reihenfolge EFBDHCAGI würde die obige Kennzeichnung als angegeben
[1,0,1,2,5,1,0,5,1]
. - Sie können entweder ein vollständiges Programm oder eine Funktion schreiben. Im letzteren Fall kann die Ausgabe eine Reihe von Ganzzahlen sein, wenn Ihre Sprache diese unterstützt.
- Die Ausgabeliste kann Duplikate enthalten, ihre Länge darf jedoch 9 nicht überschreiten.
- Standardlücken sind nicht zulässig.
Testfälle
Diese haben einstellige Zahlen, die am Raster ausgerichtet sind. Passen Sie sie an Ihre gewählte Reihenfolge an.
011
210 => 1 2 5
551
010
202 => 0 2
221
110
123 => 0 2 3
221
111
111 => 1
111
111
141 => 1 4
111
quelle
CJam,
5667 BytesBestellung :
CIGABFHDE
.Beispieleingabe:
Ausgabe:
Zunächst werden Zahlen in den Ecken entfernt, die mit den verbundenen Zahlen an den Seiten identisch sind. Dann werden Zahlen auf den Seiten entfernt, die mit den Zahlen auf den nächsten Seiten übereinstimmen. Schließlich werden alle zweimal oder mehrmals vorkommenden Nummern entfernt und die mittlere Nummer hinzugefügt.
quelle
CJam, 90 Bytes
Dies basiert auf einer iterativen Flutfüllung , die hier erklärt wird , und kann viel Golf gespielt werden!
Benötigt die Eingabe in der Reihenfolge
ABCDEFGH
wie:und Ausgabe sind die verbundenen Knoten:
Kurze Erklärung
Vollständige Erklärung folgt
Probieren Sie es hier online aus
quelle