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 nde l'entrée si et seulement si l'ensemble de nœuds avec étiquette nest connecté. Dans cet exemple, une sortie acceptable serait [1,2,5], car les deux 0s 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