Le défi
Considérez la grille principale 3x3, comme indiqué dans le graphique ASCII suivant:
A--B--C
|\/|\/|
|/\|/\|
D--E--F
|\/|\/|
|/\|/\|
G--H--I
On vous donne en entrée une liste d'entiers de longueur 9 qui représentent un étiquetage des nœuds. Par exemple, l'entrée [0,1,1,2,1,0,5,5,1]
représente l'étiquetage suivant:
0--1--1
|\/|\/|
|/\|/\|
2--1--0
|\/|\/|
|/\|/\|
5--5--1
Votre sortie est l'ensemble d'entiers dans l'entrée qui forment des ensembles de nœuds connectés. Plus explicitement, la sortie devrait contenir un entier n
de l'entrée si et seulement si l'ensemble de nœuds avec étiquette n
est connecté. Dans cet exemple, une sortie acceptable serait [1,2,5]
, car les deux 0
s ne sont pas connectés. Le nombre d'octets le plus bas gagne.
Règles détaillées
- Vous pouvez choisir un ordre fixe pour les nœuds dans votre liste d'entrée, et vous devez l'indiquer dans votre réponse. Dans l'ordre EFBDHCAGI, l'étiquetage ci-dessus serait donné comme
[1,0,1,2,5,1,0,5,1]
. - Vous pouvez écrire soit un programme complet soit une fonction. Dans ce dernier cas, la sortie peut être un ensemble d'entiers si votre langue les prend en charge.
- La liste de sortie peut contenir des doublons, mais sa longueur ne doit pas dépasser 9.
- Les failles standard ne sont pas autorisées.
Cas de test
Ceux-ci ont des nombres à un chiffre alignés sur la grille; ajustez-les à votre commande choisie.
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
la source
CJam,
5667 octetsOrdre:
CIGABFHDE
.Exemple d'entrée:
Production:
Il supprime d'abord les numéros dans les coins qui sont les mêmes que les numéros connectés sur les côtés. Ensuite, il supprime les numéros sur les côtés qui sont les mêmes que les numéros sur les côtés suivants. Enfin, il supprime tous les numéros survenus deux fois ou plus et ajoute le numéro central.
la source
CJam, 90 octets
Ceci est basé sur un remplissage par inondation itératif expliqué ici et peut être joué beaucoup au golf!
Nécessite l'entrée dans l'ordre
ABCDEFGH
comme:et la sortie est les nœuds connectés:
Brève explication
Explication complète à suivre
Essayez-le en ligne ici
la source